2010-03-06 2 views
16

배열 가정 요소 정의 배열 문자열 []를 StrArray = 새로운 String [50] 등;.배열의 요소 중 null이 아닌 것은 몇 개입니까? I는이 같은

는 이제 50 개 요소에서 일부 요소는 할당되고 나머지는 그때 할당 된 요소의 수를 원하는 null이 남아 있습니다.

여기처럼 30 요소는 내가 그 그림을 원하는 다음 할당됩니다.

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

답변

27

당신은 Enumerable.Count를 사용할 수 있습니다 :

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

extension method 반복 배열 및 요소의 수를 계산 LINQ를 사용

+0

여기에 strArray 같은 배열의 Count 속성을 얻을 수 없습니다 ... – Harikrishna

+1

코드는 LINQ를 사용합니다. LINQ 확장 메서드를 표시하려면 소스 파일의 맨 위에'using System.Linq; '를 추가해야합니다. – dtb

+0

strArray의 각 요소가 매번 for 루프에서 null인지 아닌지 확인하는 것과 같은 방법입니까? – Harikrishna

7

당신은

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

당신은 내 5.37 초 이길 :)하지만 OP는 null 또는 null이 아닌 요소를 원합니까? – slugster

+0

사실, 죄송합니다. –

+0

@AstanderSir .. 감사합니다 .... – Harikrishna

1

사용 LINQ를 시도 할 수 있습니다 지정된 술어가에 적용됩니다.

+0

@slugster always rock !! :) – BreakHead

+0

감사합니다 Mmmmm?!?! 다른 사람들은 나보다 더 간결한 대답을했습니다. – slugster

+0

좋은 답변 감사합니다 ... – Harikrishna

관련 문제