在Java中,我创建了一个int数组,我想将这些值中的几个加在一起以在同一数组中获得另一个值,但是(可以理解)我收到一条错误消息,内容为“变量可能尚未初始化。”这是代码:

public static void random(){
    Random rand = new Random();
    int[] colours = {rand.nextInt(20)+1,rand.nextInt(20)+1,(100-(colours[0]+colours[1]))};


我想在这里发生的是将“ rand.nextInt(20)+1”的第一个元素(我们称之为“值A”)添加到(我们称之为)值B中以获得值C(“ 100色[0] +色[1]”)。我的第三个值是(100-A + B)= C。有什么办法可以在将值C保留在数组中的同时执行此操作?我将这些值通过for循环放入,我希望每个值都与循环数相对应(基本上,我希望每个循环都放入一个值;循环1输出A,循环2输出B,循环3个输出C)。

最佳答案

只需将最后一个元素默认为0(或任何其他值),然后在下一行中对其进行更新:

Random rand = new Random();
int[] colours = {rand.nextInt(20)+1, rand.nextInt(20)+1, 0};
colours[2] = 100-(colours[0]+colours[1]);

07-26 04:55