У меня есть массив целых чисел:
var a = [1,2,3,4];
Как я могу узнать, существует ли в этом массиве число, такое как число 1
без цикла for?
Я видел, что у С# есть Array.Exists(T)
но я не уверен, как его использовать. Если это хороший способ сделать это, я буду признателен за некоторые советы.
Поскольку массивы С# могут использоваться в выражениях LINQ, вы можете сделать это:
bool hasOne = a.Any(n => (n == 4));
Для этого необходимо добавить using System.Linq
.
Лучше пользователю Contains
или Any
но вы попросили 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
Используя Linq
Contains, вы можете проверить наличие int,
var intVar = 1;
var exists = a.Contains(intVar);