my compiler keep pointing at this line:
arr[i] = new specialDelivery(name,name2,weight,special);
and this :
arr[i] = new specia
From your code:
int size = 0;
...
Parcel arr[] = new Parcel[size];
Therefore, you've created an array with length 0. Since arr[0] attempts to access the first element, but a zero-length array has zero elements, you get that exception. You will have to either allocate the array with an appropriate non-zero size, or use a dynamic container such as an ArrayList
.
You have declared an array of size 0
, because that's what size
was when the array was created. So you can't assign anything to this array. On top of that, the array's size is fixed at 0, so you can't do anything to change the size of it.
Create your array after you have assigned a number to size
, so it has the proper size from the start:
strinput = JOptionPane.showInputDialog ( " Enter number of parcel : " );
size = Integer.parseInt(strinput);
Parcel arr[] = new Parcel[size]; // move this line down here