0

前の配列。

  String[] player = {"Empty","Empty","Empty","Empty"}

入力後の配列。

String[] player = {"Tom","Bob","Alex","Kid"}

配列のすべての要素をチェックする方法があったことを覚えています。

if(!player[0].equals("Empty") && !player[1].equals("Empty") && !player[2].equals("Empty") && !player[3].equals("Empty"))
{
   System.out.println("No more space");
}

私の質問。配列のすべての要素を選択する方法はありますか?

4

3 に答える 3

1

次のような意味です。

boolean hasEmpty = false;

for (int i = 0; i < player.length(); i ++)
{
     if(player[i].equals("Empty")){
         hasEmpty = true;
         break;
     }
}

if(hasEmpty) System.out.println("No more space");
于 2013-01-13T00:52:09.630 に答える
1

これはオプションではないかもしれませんが、Java 8では次のことができます

boolean nonEmpty = Arrays.asList(player).anyMatch(x -> x.equals("Empty"))
于 2013-01-13T01:17:33.030 に答える
0

暗黙的に配列を反復処理できます。

if(!Arrays.asList(player).contains("Empty"))
   System.out.println("No more space.");

または明示的に配列を反復処理します:

for(String p : player)
{
    if(!p.equals("Empty"))
       continue;
    else
    {
       System.out.println("No more space.");
       break;
    }
}
于 2013-01-13T00:49:44.157 に答える