Я сейчас пытаюсь выучить ввод / вывод, и мне действительно тяжело с этим.В настоящее время я застрял в одном конкретном упражнении из моей учебной книги, где мне нужно написать программу, которая читает файл, содержащий два столбца чисел с плавающей запятой, запрашивает у пользователя имя файла, а затем печатает среднее значение для каждого столбца.,
Делать все это в основном проще всего, или я должен распределить его по методам?Это то, что я до сих пор придумал:
/**
* @param args
*/
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.println("Enter the File Name: ");
String fileNameReading = in.next();
in.close();
try {
getAverage(fileNameReading);
} catch (IOException e) {
e.printStackTrace();
}
}
private static void getAverage(String fileNameReading1) throws IOException {
double firstColumnSum = 0; //Skapar summa för den första kolumnen
double secondColumnSum = 0; //Skapar summa för den andra kolumen
int allRows = 0; //Skapar summa för antalet rader
while (in.hasNextLine()) {
String[] row = in.nextLine().split("\\s+"); //Skapar arrayen rows
firstColumnSum += Double.parseDouble(row[0]);
secondColumnSum += Double.parseDouble(row[1]);
allRows++;
}
double row1 = firstColumnSum / allRows;
double row2 = secondColumnSum / allRows;
in.close();
System.out.printf("Medelvärdet på den första kolumnen är: %.2f\n",row1);
System.out.printf("Medelvärdet på den andra kolumnen är: %.2f\n", row2);
}
Проблема на данный момент заключается в том, что сканер не работает, так как он работает не так, как основной, как мне заставить это работать?