【发布时间】:2019-09-13 00:19:41
【问题描述】:
我对 Java 比较陌生,我的部分作业要求我生成一个由 16 对音符和持续时间组成的随机字符串。
我查找了一些示例,并尝试在课堂上筛选提供的材料,但我发现的结果要么是针对不同的编程语言,要么是仅在列表中随机选择一项。
我将音符和持续时间定义为:
static char[] validNotes = {'A', 'B', 'C', 'D', 'E', 'F', 'G'};
static double[] validDuration = {0.25, 0.5, 1, 2, 4};
预期的字符串输出将是随机的,但示例如下:
[A(2), G(3), B(0.5), C(1), C(1), D(0.25), …]
【问题讨论】:
-
List<String> pairs = new ArrayList<>(); for (char note : validNotes) for (double duration : validDuration) pairs.add(note + "(" + duration + ")"); Collections.shuffle(pairs); System.out.println(pairs.subList(0, 16)); -
你试过什么?你得到了什么结果?