ランダム化中に複数の ArrayList にわたる順序を維持する
単一の ArrayList をランダム化するのは簡単な作業ですが、複数の ArrayList が関連する場合に課題が発生します。相互に一貫した方法でランダム化する必要があります。これを実現するには、Collections.shuffle() の機能と共有ランダム シードを活用できます。
次のコード スニペットは、望ましい結果を達成する方法を示しています。
<code class="java">import java.util.ArrayList; import java.util.Collections; public class ArrayListRandomization { public static void main(String[] args) { // Initialize the ArrayLists String[] file = {"H1.txt", "H2.txt", "H3.txt", "M4.txt", "M5.txt", "M6.txt"}; ArrayList<String> fileList = new ArrayList<>(Arrays.asList(file)); String[] img = {"e1.jpg", "e2.jpg", "e3.jpg", "e4.jpg", "e5.jpg", "e6.jpg"}; ArrayList<String> imgList = new ArrayList<>(Arrays.asList(img)); // Generate a shared random seed long seed = System.nanoTime(); // Randomize the file list Collections.shuffle(fileList, new Random(seed)); // Randomize the image list using the same seed Collections.shuffle(imgList, new Random(seed)); // Print the randomized ArrayLists System.out.println("Randomized fileList:"); for (String s : fileList) { System.out.println(s); } System.out.println("Randomized imgList:"); for (String s : imgList) { System.out.println(s); } } }</code>
この例では、コード:
共有ランダム シードを使用することにより、両方の ArrayList が同じ方法でランダム化され、対応する要素間の関係が確実に維持されます。 .
以上が順序の一貫性を維持しながら複数の ArrayList をランダム化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。