2010-03-06 9 views
16

Un array è definito di elementi presunti come I ho array come String [] strArray = new String [50];.Quanti elementi dell'array non sono nulli?

Ora da 50 elementi solo alcuni elementi sono assegnati e rimanenti sono lasciati nulli quindi voglio il numero di elementi assegnati.

Come qui sono assegnati solo 30 elementi quindi voglio quella figura.

risposta

27

È possibile utilizzare Enumerable.Count:

string[] strArray = new string[50]; 
... 
int result = strArray.Count(s => s != null); 

Questo extension method itera la matrice e conta il numero di elementi delle il predicato specificato si applica a.

+0

Qui non riesco a ottenere la proprietà Count di array come strArray qui ... – Harikrishna

+1

Il codice utilizza LINQ. È necessario aggiungere 'usando System.Linq;' nella parte superiore del file sorgente per rendere visibili i metodi di estensione LINQ. – dtb

+0

È come fare ogni volta che si verifica per ogni elemento di strArray che è nullo o no nel ciclo for? – Harikrishna

7

utilizzando LINQ è possibile provare

int count = strArray.Count(x => x != null); 
+1

Hai battuto il mio 5,37 secondi :) Ma l'OP vuole elementi nulli o non nulli? – slugster

+0

Vero, mi dispiace, aggiustato. –

+0

@AstanderSir .. Grazie .... – Harikrishna

1

utilizzare LINQ:

int i = (from s in strArray where !string.IsNullOrEmpty(s) select s).Count(); 
+0

@slugster sempre rock !! :) – BreakHead

+0

Mmmmm grazie?!?! Gli altri ragazzi hanno avuto risposte più concise di me. – slugster

+0

Buona risposta Grazie ... – Harikrishna

Problemi correlati