我试图创建一个范围从0到9的随机数的数组,其中这个变量是kickerNumbers.虽然说不兼容的类型我得到编译错误.我曾试图改变(int)到[int]喜欢它说,但我不认为这是正确的反正足够的切切实实的事实并非如此.有没有其他方式来写这个?我需要它作为前4个数字为0-9,但第五个数字需要更小,如0-4.对于0-4,我只是做了一个完全不同的变量.这是一个不错的选择吗?以下是给出错误的行的示例代码.
import java.util.Scanner;
import java.util.InputMismatchException;
public class CashBallTest
{
public static void main(String[]args)
{
Scanner keyboard = new Scanner(System.in);
int kicker;
int[] kickerNumbers = (int)(Math.random()*0+9);
int kickerPowerball=(int)(Math.random()*0+4);
Run Code Online (Sandbox Code Playgroud)
错误如下:
\CashBallTest.java:9: incompatible types
found : int
required: int[]
int[] kickerNumbers = (int)(Math.random()*0+9);
Run Code Online (Sandbox Code Playgroud)
我也试图改变(int)到(int[])但随后说,这是一个不可兑换的型计数为双时,它需要有一个int[],但我看不出它得到double类型.
int[] kickerNumbers = (int)(Math.random()*0+9);
Run Code Online (Sandbox Code Playgroud)
你不能指定int一个int[]
假设应该是更多的一个数字,它可能是这样的
int[] kickerNumbers = new int[5];
for(int i = 0; i < kickerNumbers.length; i++) {
kickerNumbers[i] = (int)(Math.random()*0+9);
}
Run Code Online (Sandbox Code Playgroud)
在一个不相关的说明,为什么你成倍增加Math.random()*0?这对我来说似乎很愚蠢.如果你想要1到10的数字,我会这样做:Math.random()*10 + 1