この記事の主な研究は、Collections.Shuffle()メソッドの関連コンテンツです。以下の特定のコンテンツを見てみましょう。
次のように、java.util.collectionsクラスの下に静的シャッフル()メソッドがあります。
1)static void shuffle(list <?
2)静的ボイドシャッフル(リスト<?>リスト、ランダムRAND)は、指定されたランダムソースを使用して指定されたリストを実行します。すべての順列が発生する可能性は、ランダムソースが公平であると仮定して、ほぼ等しいです。
簡単に言えば、それはシャッフルのようなもので、元の注文をランダムに混乱させます。
注:整数配列が与えられた場合は、array.aslist()メソッドを使用してコレクションクラスに変換します。2つの方法があります。
1)list <integer> list = arraylist(arrays.aslist(ia))を使用し、shuffle()を使用して、基礎となる配列の順序は変更されません。
2)list <integer> list = arrays.aslist(ia)を使用し、shuffle()を使用して、基礎となる配列の順序が変更されます。コードの例は次のとおりです。
パッケージahu; import java.util。*; public class modify {public static void main(string [] args){random rand = new random(47); integer [] ia = {0,1,2,3,4,5,6,7,8,9};リスト<Integer>リスト=新しいリスト=新しいarraylist <integer>(arrays.aslist(ia)); system.out.println( "before shufflig:"+list); collections.shuffle(list、rand); system.out.println( "shuffling:"+list); system.out.println( "arrays.tostring(IA); list1 = arrays.aslist(ia); system.out.println( "shuffling:"+list1); collections.shuffle(list1、rand); system.out.println( "shuffling:"+list1); system.out.println( "array:"+arrays.tostring(ia);}}}}操作結果は次のとおりです。
3、9]シャッフル後:[0、1、2、3、4、5、6、7、8、9]シャッフル後:[0、1、2、2、3、4、5、6、7、8、9]シャッフル後:[0、1、2、3、4、5、6、7、8、9]シャッフル後: 2、3、4、5、6、7、8、9]シャッフル後:[0、1、2、3、4、5、6、7、8、9]シャッフル後:[8、5、2、6、1、4、9、3、7]。
最初のケースでは、arrays.aslist()の出力はarrayList()のコンストラクターに渡されます。これにより、IAの要素を参照するアレイリストが作成されるため、これらの参照を破壊してもアレイは変更されません。ただし、Arrays.Aslist(IA)の結果が直接使用される場合、この混乱はIAの順序を変更します。 arrays.aslist()によって生成されたリストオブジェクトが、その物理的実装として基礎となる配列を使用することを認識することが重要です。実行するアクションがこのリストを変更し、元の配列を変更したくない限り、別のコンテナにコピーを作成する必要があります。
要約します
上記は、コレクションの分析に関するこの記事のすべての内容です。Shuffle()メソッドの例、私はそれがすべての人に役立つことを願っています。興味のある友人は、このサイトの他の関連トピックを引き続き参照できます。欠点がある場合は、それを指摘するためにメッセージを残してください。このサイトへのご支援をありがとうございました!