У меня есть следующий код, который получает пользовательский ввод:
456589 maths 7.8 english 8.6 end
654564 literature 7.5 physics 5.5 chemistry 9.5 end
и сохраняет код в начале предложения в массиве с именем grades, а код в другом массиве с именем person. Мне нужно использовать эти два массива, чтобы потом отображать среднюю оценку каждого человека в каждом уроке.
Мой код следующий
import java.util.Scanner;
public class Student
{
public static void main(String[] args)
{
Scanner s = new Scanner(System.in);
String currentAnswer = "";
String userWords = "";
String am = "";
String subj = "";
float grad;
float[] grades = new float[100];
String[] person = new String[100];
System.out.println("Enter your a.m. as well as the subjects which you sat in finals");
while(!currentAnswer.equals("end"))
{
currentAnswer = s.nextLine(); // reads the number or word
userWords += currentAnswer + " ";
if(currentAnswer.equals("000000"))
{
System.out.println("The sequence of numbers you entered is: "+userWords);
System.out.println("Exiting...");
System.exit(0);
}
String[] wordsplit = currentAnswer.split(" ");
for (String str : wordsplit)
{
try
{
grade = Float.parseFloat(str);
}
catch(NumberFormatException ex)
{
person = str;
}
}
}
System.out.println("Enter your a.m. as well as the subjects which you sat in finals");
}
}
В сообщении об ошибке указаны строки
grades = Float.parseFloat(str);
person = str` --> `String cannot be converted to String[]`<br>
Кажется, что преобразование строки в массив строк запрещено. Что я могу сделать, чтобы избежать этого?
спасибо !!