Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
403 of 1492 menu
◀ ▶

Метод FindAll

Метод FindAll класса List<T> создаёт новый List<T> с элементами, для которых предикат вернул true. Исходный список не меняется.

Синтаксис

List<T> matches = list.FindAll(match);

Пример

Давайте соберём все чётные числа:

using System; using System.Collections.Generic; class Program { static void Main() { List<int> nums = new List<int> {1, 2, 3, 4, 5}; List<int> evens = nums.FindAll(x => x % 2 == 0); Console.WriteLine(string.Join(" ", evens)); } }

Результат выполнения кода:

2 4

Пример

Давайте отфильтруем односимвольные строки:

using System; using System.Collections.Generic; class Program { static void Main() { List<string> items = new List<string> {"a", "bb", "c", "d", "e"}; List<string> res = items.FindAll(s => s.Length == 1); Console.WriteLine(string.Join(" ", res)); } }

Результат выполнения кода:

a c d e

Пример

Давайте проверим Count результата:

using System; using System.Collections.Generic; class Program { static void Main() { List<int> nums = new List<int> {1, 2, 3, 4, 5}; List<int> big = nums.FindAll(x => x > 2); Console.WriteLine(big.Count); } }

Результат выполнения кода:

3

Пример

Давайте убедимся, что исходный список цел:

using System; using System.Collections.Generic; class Program { static void Main() { List<int> nums = new List<int> {1, 2, 3, 4, 5}; List<int> part = nums.FindAll(x => x < 3); Console.WriteLine(nums.Count); } }

Результат выполнения кода:

5

Смотрите также

  • метод Find,
    который возвращает только первый
  • метод RemoveAll,
    который удаляет подходящие из исходного
  • метод TrueForAll,
    который проверяет все элементы
  • метод ConvertAll,
    который преобразует каждый элемент
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить