0
List<Integer> list = Collections.shuffle(list);

この割り当ては機能しません。それは明らかに aListであり、 を.shuffle()とりますが、 「互換性のない型」を与えListます。では、なぜこれが機能しないのでしょうか。

4

2 に答える 2

3

javadocを確認してください。戻り型Collections.shuffleがあります。最初voidの を作成してから、シャッフルします。例えば:List

List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
Collections.shuffle(list);
System.out.println("Shuffled List: " + list);
于 2013-02-03T18:15:16.857 に答える
1

実際には次の 2 つの問題があります。

  1. List list = new ArrayList(list);割り当ての右側のオペランドが左側のオペランドの前に解析されるため、変数を初期化/宣言する前に変数にアクセスすることはできません。コードは機能しません。
  2. @ReimeusCollections.shuffle()が述べたように、void戻り値の型があるため、それ(「結果」)を変数に割り当てることはできません。このメソッドshuffle()は、入力として与えられた同じリストを変更します (関数型プログラマーにとっては直感的ではないかもしれません)。
于 2013-02-03T18:18:52.680 に答える