1ArrayList
つの値 true を含む「リスト」があります。しかし、私が書くとき:
if (list.get(0)==true)
「互換性のないオペランド型のオブジェクトとブール値」というエラーが表示されます。ArrayList.get()
メソッドは常に returnですかobject
? もしそうなら、どうすればboolean
値を取得できますか?
ありがとう。
1ArrayList
つの値 true を含む「リスト」があります。しかし、私が書くとき:
if (list.get(0)==true)
「互換性のないオペランド型のオブジェクトとブール値」というエラーが表示されます。ArrayList.get()
メソッドは常に returnですかobject
? もしそうなら、どうすればboolean
値を取得できますか?
ありがとう。
リストに常にブール値が含まれている場合は、配列リストをブール値として入力することをお勧めします
List<Boolean> list = ArrayList<Boolean> ();
そして今、あなたはあなたがやりたいことをすることができます:
if (list.get(0))
詳細については:
if (list.get(0)==true)
とif (list.get(0))
同一です。
ジェネリックを使用できない場合は、キャストできます
if((Boolean) list.get(0))
{
System.out.println("OK");
}
次のように、「if」ステートメントが true になるかどうかを確認するために var を作成してみることができます。
for(int i = 0; i < aList.size();i++){
match = aList.get(i).equals("Red");
System.out.print(match);
}
match 変数は、この比較のブール値を受け取ります。
よろしく、
オタコン。
はい、ArrayList はオブジェクトを格納し、ジェネリックを使用しない限り、クラスを認識できません。
したがって、ジェネリックまたは「get」ごとにキャストするという 2 つのオプションがあります。
キャストあり:
if ( ((Boolean)list.get(0))==true ) { ... }
ジェネリックでは、次のようにリストを宣言します。
List<Boolean> list= new ArrayList<>();
list.add(true);
if (list.get(0)) { // list.get(0)==true is unnecesary
...
}