Partition

Divide uma coleção em duas aplicando uma função predicate. Uma coleção contém os valores para qual a função retornou true e a outra para os valores false.

A ordem dos elementos é preservada nas duas coleções.

Parâmetros

Retorno

Func<T, bool> predicate

IEnumerable<T> source

(IEnumerable<T> Trues, IEnumerable<T> Falses)

Como usar

Filtrando valores pares e ímpares

//IEnumerable<int> source = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }

var (resultEvens, resultOdds) = 
    source.Partition(value => value % 2 == 0)

//resultEvens = { 2, 4, 6, 8, 10 }
//resultOdds = { 1, 3, 5, 7, 9 }

Last updated