我有一个问题,在这个问题中,我需要询问用户输入多少次他们希望掷骰子并创建并打印具有请求卷的数组。到目前为止,我可以创建数组,但问题的另一部分是每当有连续的重复卷时,我必须在它们周围放置括号。例如输入11,创建阵列在数组中查找连续的重复整数
{1,2,1,4,6,2,3,5,5}将打印1 2 1(4 4)6 2 3(5 5 5)
到目前为止,我已经写了
import java.util.Scanner;
import java.util.Random;
public class HW0603 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("How many times would you like to roll: ");
System.out.println();
int x = input.nextInt();
run(rolls(x), x);
}
public static int[] rolls(int x) {
Random random = new Random();
int y[] = new int[x];
for (int i = 0; i < x; i++) {
int z = random.nextInt(6) + 1;
y[i] = z;
}
return y;
}
public static void run(int a[], int b) {
for (int i = 1; i < b; i++) {
System.out.print(a[i] + " ");
}
}
}
至于我真的不知道如何开始的括号。使用if语句对我不起作用,因为我将a[i]
与a[i+1]
和a[i-1]
进行了比较,所以我的if语句变体似乎给了我无限的错误。任何人都可以给我一个地方开始或一些提示,以提取连续重复?
我会用'a.length'替换'b',如果你想看'a [i + 1]',你只能循环到'a.length - 1' –