从long到int的可能有损转换,JAVA
I am trying to pass long value to the method and use it there to create a Long Array. However, I am getting "possible lossy conversion from long to int" error while creating an array
long[] array = new long[n];
although I have not used any integers values.
import java.util.Scanner;
import java.util.ArrayList;
public class test{
public static void main(String[] args){
Scanner input = new Scanner(System.in);
long n = input.nextLong();
System.out. although("result is " + n + " is " + testing(n));
}
private static long testing(long n){
long[] array = new long[n];
return 0;
}
}
解决方案
Array dimensions can only be int
types. The compiler is expecting that type but you are passing in a long
type. You could change the argument type being passed in to an int
and the make the corresponding changes.
For completeness, here is what the JLS says about variables in an array
they are referenced by array access expressions that use non-negative integer index values.
相关文章