Java - 读取工资并获取总计

标签 java file loops math

所以基本上我是从文本文件中读取一些工资,然后用“while”循环将它们打印出来,然后我将它们与另一个“while”循环添加在一起。

我的问题是,运行代码时,我将工资读入控制台,但我没有从第二个“while”循环中读取总工资。

代码如下 -

package Week15;
import java.util.*;
import java.io.*;

public class h {
    public static void main(String[] args) throws IOException {
        Scanner scan = new Scanner(new File("salaries.txt"));
        double items = 0;
        double total = 0;
        double salaries;

        while (scan.hasNext()){
            salaries = scan.nextDouble();
            System.out.println(salaries);
        }   

        while (scan.hasNextDouble()) {
            // add the next salary to the total
            total += scan.nextDouble();
            // increase the number of encountered salaries by 1
            items++;
        }
        double salary = total+items;
        System.out.println("Total salary = " + salary);

        scan.close();
    }
}

控制台看起来像这样 -

14390.75
12345.99
27512.08

这是我正在使用的“salaries.txt”文件的样子 -

14390.75
12345.99
27512.08

最佳答案

while (scan.hasNextDouble()) {

这不会返回 true,因为已到达文件末尾。 尝试在第一个 while 循环中求和:

while (scan.hasNext()){
    salaries = scan.nextDouble();
    total += salaries;
    System.out.println(salaries);
}   

您还可以在此处添加您的商品计数。

关于Java - 读取工资并获取总计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33541674/

相关文章:

java - 如何将文件包含到 NetBeans 平台框架应用程序中

ruby - 当我知道文件存在时,在 Dir.foreach block 期间获取 Errno::ENOENT?

python - 在第二个列表的条件下对列表元素求和

Java Swing 定时器;创建一个循环;数到 4 两次

java - 配置扫描本地文件系统的 TreeView 以仅包含具有文件类型的文件夹

javascript - 如何使用简单的循环和 'if' 语句显示数组对象?

java - ClassCastException:使用 DialogFragment 时应用程序崩溃

java - 如何从字符串分词器函数中设计和分割标记?

java - 不使用任何工具和脚本从可执行 jar 源创建 debian 包

python - 看门狗和 matplotlib : Processing an image and displaying results when a new file comes in directory