使用Array.exists()查找列表中的整数

时间:2014-12-14 12:32:42

标签: c# arrays

我有一个整数数组:

var a = [1,2,3,4];

如何在不执行for循环的情况下查明此数组中是否存在数字1等数字?

我看到C#有一个Array.Exists(T)方法,但我不知道如何使用它。如果这是一个很好的方法,那么我会很感激一些建议。

3 个答案:

答案 0 :(得分:3)

最好是用户ContainsAny,但您要求Exists,所以:

int[] arr = {1,2,3,4};


Exists

bool a = Array.Exists(arr, elem => elem == 1); // true
bool b = Array.Exists(arr, elem => elem == 5); // false

Contains

  bool a = arr.Contains(1); // true
  bool b = arr.Contains(5); // false

Any

 bool a = arr.Any(elem => elem == 1); // true
 bool b = arr.Any(elem => elem == 5); // false

答案 1 :(得分:1)

使用Linq包含可以检查是否存在int,

var intVar = 1;
var exists = a.Contains(intVar);

答案 2 :(得分:1)

由于C#数组可以在LINQ表达式中使用,因此可以这样做:

bool hasOne = a.Any(n => (n == 4));

您需要添加using System.Linq才能进行编译。