Dovendo cercare in un array per trovare la stringa più lunga (ma anche la più corta) il codice da scrivere non è molto, ma comunque è abbastanza articolato:
1: string longest = string.Empty;
2:
3: foreach (string item in stars)
4: if (item.Length > longest.Length)
5: longest = item;
Quattro righe di codice non sono molte, ma usando LINQ possiamo ottenere il medesimo risultato con una sola riga:
1: string longest = stars.Aggregate((a, b) => a.Length > b.Length ? a : b);
Il metodo Aggregate durante l'iterazione degli elementi porta con se oltre all'elemento corrente (a) anche quello selezionato dalle precedenti iterazioni (b). Ecco che quindi basta confrontarli e ritornare il più lungo dei due per trovare l'elemento più lungo di tutto l'array. Invertendo il segno > troveremmo il più corto.