Java 程序 - 从 txt 文件读取数值数据

Java program - Reading numeric data from txt file

此 Java 程序用于从包含多个整数的 txt 文件中查找数据。我已经计算出程序的最大值、平均值 运行 的代码。对于你们中的很多人来说,这应该很简单,但我在编程方面相对缺乏经验,所以请耐心等待。


我遇到问题的三个代码如下。

  1. 高于平均数的数字
  2. 质数个数
  3. 求总和

有谁知道这样做的方法吗? 谢谢。任何建议都有帮助。


这是20个号码的txt文件样本

  1. 1
  2. 12
  3. 34
  4. 54
  5. 36
  6. 76
  7. 67
  8. 86
  9. 45
  10. 44
  11. 33
  12. 22
  13. 2
  14. 4
  15. 7
  16. 87
  17. 89
  18. 99
  19. 432
  20. 543

列表项

package Assignment1;

import java.io.File;
import java.io.IOException;
import java.util.Scanner;

public class Assignment1 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

        // Define two arrays - local variables
        // Declaring 10 integers
        int[] myIntArray = new int[20];
        // Declaring 10 strings

        //File
        File f = new File ("inputassignment1.txt");

        try {
            Scanner sc = new Scanner(f);    //Scanner
             for (int i=0; i < myIntArray.length; i++) {
                 myIntArray[i] = sc.nextInt();
            }
            // Closing the file
            sc.close();

       } catch (IOException e) {
            System.out.println("Unable to create : "+e.getMessage());      
       }

        System.out.println("Highest number: " + maxNum(myIntArray));

        System.out.println("Average number: "+aveNum(myIntArray));
//      System.out.println(allNum(myIntArray));
    //  System.out.println(avgPlus(myIntArray));
    }// end of main

让我们分解你的任务:

总共有3个任务:

  1. 计算有多少数字高于平均水平
  2. 求总和
  3. 找出所有素数

其中每一项都要求您:

  • 从文本文件中读取数字(可能是数组)
  • 对它们执行一些检查(例如 if isPrime(number) { primes[numPrimes] = number; numPrimes++; }
  • 数一数有多少(numNumbers++,每个数)
  • 对它们求和(totalSum += number,每个数字)

对于第一个,您需要在拥有 count/sum 之后添加另一个循环,其他两个应该可以通过修改第一个循环来实现(我在下面展示了一个示例)。

我认为您应该能够 google 了解如何执行这些操作。您上面的代码看起来是一个很好的起点。

int numNumbers = 0;
int totalSum = 0;
for (int i=0; i < myIntArray.length; i++) {
    myIntArray[i] = sc.nextInt();
    numNumbers++;
    totalSum += myIntArray[i];
}