例如,我有两个数组:
string[] arrayOne = {"One", "Two", "Three", "Three", "Three"};
string[] arrayTwo = {"One", "Two", "Three"};
var result = arrayOne.Except(arrayTwo);
foreach (string s in result) Console.WriteLine(s);
Run Code Online (Sandbox Code Playgroud)
我想要的物品arrayOne不在其中arrayTwo.所以在这里我需要结果:Three Three
但我没有得到任何结果,因为它将"三"视为常见而不检查其他两项("三","三").
我不想写一个巨大的方法来解决这个问题.尝试了其他答案在SO但没有按预期工作:(.
谢谢!!!
我正在创建一个宏但我被困在这个剪切粘贴语句中,从昨天起就无法继续.
这是问题:我选择"D2到F2"列中的所有行并将其粘贴到"A1".这是它的代码:
Range("D2:F2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
ActiveSheet.Paste
Run Code Online (Sandbox Code Playgroud)
这是我尝试过的:
代码更改:使用PasteSpecial而不是简单Paste.
Range("D2:F2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
'ActiveSheet.Paste ' insted of this using paste special.
ActiveSheet.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Run Code Online (Sandbox Code Playgroud)代码更改:将选择调整为3列.
Range("D2:F2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Cut
Range("A1").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Resize(1, 3).Select
'ActiveSheet.Paste
Run Code Online (Sandbox Code Playgroud)On Error Resume Next声明.它忽略了错误消息,但也没有粘贴数据.我正在寻找一种方法来忽略此错误消息并继续粘贴.我们通常手动copy-paste或cut-paste在Excel工作表中得到此错误,我们可以选择忽略和粘贴数据.同样有什么方法可以在宏中忽略它吗?
我有字符串列表.如果列表包含该部分字符串,则找出该项的索引.请查看代码以获取更多信息.
List<string> s = new List<string>();
s.Add("abcdefg");
s.Add("hijklm");
s.Add("nopqrs");
s.Add("tuvwxyz");
if(s.Any( l => l.Contains("jkl") ))//check the partial string in the list
{
Console.Write("matched");
//here I want the index of the matched item.
//if we found the item I want to get the index of that item.
}
else
{
Console.Write("unmatched");
}
Run Code Online (Sandbox Code Playgroud) 我试图了解Async/Await编程模型。我编写了一个示例程序来了解相同的内容。
我已经写了一个名为3种独立的异步方法GetFirstValue,GetSecondValue,GetThirdValue。有一种名为的方法M1,该方法异步执行上述3种方法,并返回上述3种方法的串联结果。
我的主要想法是,如果方法GetFirstValue需要5秒钟,GetSecondValue7秒钟和GetThirdValue8秒钟。然后,M1应在不到20秒的时间内返回。由于3种方法不同步。
但是由于我没有正确理解这个概念。我做错了。这是我正在研究的完整程序。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
namespace LearningAsyncProgramming
{
class Program
{
static void Main(string[] args)
{
System.Diagnostics.Stopwatch watch = System.Diagnostics.Stopwatch.StartNew();
AsyncMethodsClass asyncMethods = new AsyncMethodsClass();
Console.WriteLine(asyncMethods.M1().Result);
watch.Stop();
Console.WriteLine(watch.ElapsedMilliseconds/1000);
}
}
class AsyncMethodsClass
{
public async Task<string> M1()
{
string retVal = string.Empty;
int v1 = await GetFirstValue();
int v2 = await …Run Code Online (Sandbox Code Playgroud)