我正在制作这样的节目:
Scanner sc = new Scanner(System.in);
double n = sc.nextDouble();
double[]d = new double[n];
我无法执行此操作,因为我收到此错误:
Type mismatch: cannot convert from double to int
我知道我可以把它作为(int)
投射到int,但问题是n可以是一个非常大的数字(最多10 ^ 6)
如何制作这样的数组:
new array[variable which can be big (up to 10^6)]
答案 0 :(得分:1)
Java的int变量的最大值是2147483647 (2^31-1)
。无论如何,它大于10 ^ 6,我不相信你需要一个超过2147483647值的数组(你不能)。
另外,正如其他人所提到的那样,拥有一个例如数组的数组是没有意义的。 10.5值。应始终使用Int类型。
所以只扫描一个整数:
int n = sc.nextInt();
答案 1 :(得分:1)
就这样做:
int n = sc.nextInt();
实际上int
足以容纳10 ^ 6:
int: 32 bit Min = -2 147 483 648 Max = +2 147 483 647
答案 2 :(得分:0)
在Java中,数组长度数据类型必须是int。
无论如何,价值高达10 ^ 6 $('selector').on('click', function (e) {
var returnedValue = checkPageLayoutsAreSelected();
});
足够大。
所以你可以决定使用这段代码:
int
Java中int的最大限制值为2147483647。