Possible Lossy conversion from long to int

arrays, java, long-integer

Solution

Array index is an integer in Java and the compiler will advice you. So maximum array size is (aproximately) `Integer.MAX_VALUE`. For bigger arrays you should use ArrayList.

To go around this dirt&quick

arr = new long[(int)y+1];  

Problem

I wish to enter one `int` and another `long` ex: 1 and 1000000000, and now I wish to create an array of size 1000000000. And then at each index of array, store int val, ex: `arr[100000000] = 4`. When I'm trying to do this Netbeans shows me an error in this line: ``` arr = new long[y+1]` and `arr[j] = 0` ``` "Possible Lossy conversion from long to int". Here's my code:- ``` public static void main(String[] args) throws IOException { BufferedReader s = new BufferedReader(new InputStreamReader(System.in)); String[] xe = s.readLine().split(" "); int x = Integer.parseInt(xe[0]); long y = Long.parseLong(xe[1]); long []arr; arr = new long[y+1]; for(long j=0;j<=y;j++) arr[j] = 4; } ```

Original source

Related problems