Java: чтение из файла и поиск суммы и среднего всех чисел в - PullRequest
0 голосов
/ 12 марта 2020

Я случайно сгенерировал список из 50 чисел от 1 до 100 и записал его в новый файл. Как бы я прочитал файл и вычислил сумму и среднее всех чисел?

import java.util.*;
import java.io.*;
import java.io.FileWriter;
import java.io.PrintWriter;

public class Lab5Part2{
   public static void main(String [] args)throws IOException
   {
      FileOutputStream fo = null;
      PrintWriter out = null;
      File file = new File("outwrite.txt");
      FileWriter fw = new FileWriter(file);
      PrintWriter pw = new PrintWriter(fw);


      Random rand = new Random();
      int number, count=0, countTwo=0;
      while(count < 50)
      {
         while(countTwo < 50)
         {

            number=rand.nextInt(100)+1;
            pw.println(number);
            count++;
            countTwo++;

         }  
      }
      pw.close();
  }

}

1 Ответ

0 голосов
/ 12 марта 2020

Вот одно из решений:

var stream = Files.lines(Path.of("outwrite.txt"))
                  .map(String::trim)
                  .filter(s -> !s.isEmpty())
                  .mapToInt(Integer::parseInt);
int sum = stream.sum();
double average = stream.average().getAsDouble();

Обратите внимание, что я предполагаю, что каждая строка файла состоит только из допустимых чисел, иначе код не будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...