2017-10-14 13 views
1

値を持つ要素の数を確認するにはどうすればよいですか?はい、これには、要素に値があるかどうかをチェックする方法も含まれます。いくつの配列要素に値があるかチェックするには?

String[] Array = new String[50]; //initialization 

Array[i] = "1"; // Array[0] 

Array[] = "2"; // Array[1] 

50個の要素のうち2個に値があることをどのように知ることができますか?

(約ArrayListを読んで私のアプリは、私が取得して表示していたときにクラッシュし。。)

答えて

1

あなたはヌルされていない要素をチェックすることができ:あなたの場合

long numWithValue = Arrays.stream(array).filter(Objects::nonNull).count(); 

EDITあなたがこれを使用することができます

int numWithValue = 0; 
for (int i = 0; i < array.length; ++i){ 
    if (array[i] != null) { 
     ++numWithValue; 
    } 
} 
+0

(オブジェクト::非NULL)用にコンパイルする必要があり、これを試してください:メソッドの参照は、この言語レベルでサポートされていません(私は、API 15を使用しています) ストリーム(ARR):シンボル – Ray

+0

@Rayを解決できません。本当に新しいバージョンのAPIを使用することをお勧めします。この勧告にかかわらず、古いバージョンでうまくいく解決策について私の編集された答えをチェックしてください。ありがとう。 – Mureinik

+1

ありがとう。 forループが機能します。 – Ray

0

:Javaの8構文を使用することはできません、あなたは常に昔ながらのループを使用することができます
int count=0; 
for(int i=0;i<Array.length;i++) 
if(!(Array[i]==null)) 
count++; 

countは、初期化された要素の数です。

0
long numWithValue = arr.length - Collections.frequency(Arrays.asList(arr), null); 

1.5 JDK

関連する問題