将'int'转换为'long'或使用'long'访问太长的数组

Dea*_*eam 4 java arrays int long-integer

比方说,我有一个数组,它是足够长的时间来访问与任何指标int,是有没有办法跟来访问这样的一个数组的索引long?以及Java如何处理这种数组?例:

int[] a = new int[]{1,5,2,4........9,2,1}
Run Code Online (Sandbox Code Playgroud)

假定上述阵列中9,2,1是在该超出的范围内的索引int(2 31).我如何访问这些元素?

Jon*_*eet 5

你不会 - 数组索引总是intJava中的值.它不允许具有多个Integer.MAX_VALUE元素的数组.

数组的长度由length字段表示,该字段是类型int.因此,不可能创建长度大于的数组Integer.MAX_VALUE.

规范没有明确地将其解析出来,但您可以从涉及的类型中推断出来.