这是我的代码我能够获得前五个整数,我可以跳过前三个整数 我需要从这个数组中跳过一个数字。 我怎么能用这段代码实现?
class Program
{
static void Main(string[] args)
{
var ints = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var result1 = ints.Take(5);
var result2 = ints.Skip(3);
Array.ForEach(result1.ToArray(), n => Console.WriteLine(n));
Console.ReadLine();
Array.ForEach(result2.ToArray(), n => Console.WriteLine(n));
Console.ReadLine();
}
}
澄清:我需要跳过整数[4],所以我只想要1,2,3,4,6,7,8,9,10。
答案 0 :(得分:0)
您可以使用Enumerable.Where
。
如果您想跳过特定索引,可以使用Where
的重载:
var result = ints.Where((i, index) => index != 4);
如果你想要跳过数组中的所有3个:
var result = ints.Where(i => i != 3);
答案 1 :(得分:0)
您可以使用IEnumerable.Where
方法过滤数组。
var ints = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
var numberToOmit = 5;
var filteredList = ints.Where(number => number != numberToOmit).toList();
filteredList.forEach(item => Console.WriteLine(item));
答案 2 :(得分:0)
要添加到现有答案,这将允许您跳过数组中的特定位置。
List<int> output = new List<int>();
int skipIteration = 3;
for (int x = 0; x < ints.Length; x++)
{
if (x != skipIteration)
{
output.Add(ints[x]);
}
}
ints = output.ToArray();
这是“快速”方式而不考虑性能/减少分配