“String não pode ser convertida para int”

Eu tenho um arquivo de texto com temperaturas de todos os 12 meses. Mas quando eu tento encontrar a temperatura média, recebo o erro “String não pode ser convertido em int” para a linha

temp [contador] = sc.nextLine ();

Alguém que vê o que está errado?

Scanner sc = new Scanner(new File("temperatur.txt")); int[] temp = new int [12]; int counter = 0; while (sc.hasNextLine()) { temp[counter] = sc.nextLine(); counter++; } int sum = 0; for(int i = 0; i < temp.length; i++) { sum += temp[i]; } double snitt = (sum / temp.length); System.out.println("The average temperature is " + snitt); 

Você precisa converter sc.nextLine em int

  Scanner sc = new Scanner(new File("temperatur.txt")); int[] temp = new int [12]; int counter = 0; while (sc.hasNextLine()) { String line = sc.nextLine(); temp[counter] = Integer.ParseInt(line); counter++; } int sum = 0; for(int i = 0; i < temp.length; i++) { sum += temp[i]; } double snitt = (sum / temp.length); System.out.println("The average temperature is " + snitt); } } 

Scanner :: nextLine retorna uma String. Em Java você não pode converter uma String para um int como você faz implicitamente.

experimentar

 temp[counter] = Integer.parseInt(sc.nextLine());