我有两个问题和答案数组
String questions[] = {
"Q1?",
"Q2?",
"Q3?"};
String answers[] = {
"A1?",
"A2?",
"A3?"};
我使用 Collections.shuffle(Arrays.asList(questions);
打乱每个数组。如何打乱每个数组以便在打乱后它们保持相同的顺序?
最佳答案
您可以改组一个包含索引的新数组。然后从第一个索引获取两个数组中的元素。
List<Integer> indexArray = Arrays.asList(0, 1, 2);
Collections.shuffle(indexArray);
String question = questions[indexArray.get(0)];
String answer = answers[indexArray.get(0)];
当然,正如其他答案所建议的那样,创建一个包含questions
和answers
的class
将是一种更面向对象的方式。这样一来,与当前方法中的 3 个数组
相比,您只需维护一个 List
或 array
。
关于java - 如何在 java 中以相同的顺序打乱两个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13532919/