Embed presentation
Download to read offline
![Can someone tell me why I'm getting Java error cannot invoke add(int) on array type int on the
bold line? I need this method to calculate median based on file that will be input in a different
method. Do no change to a main method as I need to reserve that to only have a contructor.
public int Problem7(File file) throws FileNotFoundException {
int[] listInt;
try {
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
String value = scanner.nextLine();
listInt.add(Integer.parseInt(value));
System.out.println(value);
}
scanner.close();
} catch (Exception ex) {
ex.printStackTrace();
}
Arrays.sort(listInt);
int middle = listInt.length/2;
int median = 0;
if (listInt.length%2 == 1)
median = listInt[middle];
else
median = (listInt[middle-1] + listInt[middle]) / 2;
return median;](https://image.slidesharecdn.com/cansomeonetellmewhyimgettingjavaerrorcannotinvokeaddint-230313120613-14099e55/75/Can-someone-tell-me-why-I-m-getting-Java-error-cannot-invoke-add-int-pdf-1-2048.jpg)

The document discusses a Java error regarding an attempt to invoke the 'add' method on an array type, which is not allowed. It outlines a method designed to calculate the median from an input file but incorrectly attempts to use 'listint.add()' instead of properly initializing the array. The author requests clarification on this error while specifying that the main method should remain unchanged.
![Can someone tell me why I'm getting Java error cannot invoke add(int) on array type int on the
bold line? I need this method to calculate median based on file that will be input in a different
method. Do no change to a main method as I need to reserve that to only have a contructor.
public int Problem7(File file) throws FileNotFoundException {
int[] listInt;
try {
Scanner scanner = new Scanner(file);
while (scanner.hasNextLine()) {
String value = scanner.nextLine();
listInt.add(Integer.parseInt(value));
System.out.println(value);
}
scanner.close();
} catch (Exception ex) {
ex.printStackTrace();
}
Arrays.sort(listInt);
int middle = listInt.length/2;
int median = 0;
if (listInt.length%2 == 1)
median = listInt[middle];
else
median = (listInt[middle-1] + listInt[middle]) / 2;
return median;](https://image.slidesharecdn.com/cansomeonetellmewhyimgettingjavaerrorcannotinvokeaddint-230313120613-14099e55/75/Can-someone-tell-me-why-I-m-getting-Java-error-cannot-invoke-add-int-pdf-1-2048.jpg)
