我找不到作业标签,但这是家庭作业。
我希望为每个字母随机分配一个值,同时用逗号分隔它们,并且必须在答案中使用数组。
这是我到目前为止所做的尝试,但还有一段距离。
double[] numbers = {5,4,6.2,1.5};
char[] letters = {'a','v','c',d'};
int temp = (int) (Math.random()*numbers.length);
int woo = (int) (Math.random()*letters.length);
for (int i = 0; i < letters.length; i++) {
for (int j = 0; j < numbers.length; j++){
System.out.print(letters[woo]);
System.out.print(numbers[temp]);
System.out.print(',');
}
}
我希望得到类似的输出:d4,c1.5,v6.2,a5
任何帮助将不胜感激
答案 0 :(得分:0)
您可以使用Collections.shuffle
(或原始数组的custom implementation)对数组进行混洗,然后并行迭代数组。
Double[] numbers = { 5.0, 4.0, 6.2, 1.5 };
Character[] letters = { 'a', 'v', 'c', 'd' };
Collections.shuffle(Arrays.asList(numbers));
Collections.shuffle(Arrays.asList(letters));
StringJoiner joiner = new StringJoiner(", "); // from Java 8
int length = Math.min(numbers.length, letters.length);
for (int i = 0; i < length; i++) {
joiner.add(letters[i].toString() + numbers[i]);
}
System.out.println(joiner.toString());