我从网上找到的一本书开始学习 Java。我解决了很多练习,但我在这一项中很累。我的问题是,我找不到关于如何告诉程序如果您读取“x”,您找到的下一个整数添加到sumx
. 如果您阅读“y”,您会发现下一个整数添加到sumy
. 下面是问题和我的代码。
假设一个文本文件如下所示:
x= 10
y= -45
y= 98
x= 13
x= 37
y= 36
x= -2
. . .
每一行都以“x=”或“y=”开头,但其中哪一个以不遵循任何模式。每一个后面跟一个空格,然后是一个整数。一行上的整数后面没有其他内容。
编写一个程序,读取该数据文件并计算 x 值的总和和 y 值的总和。提示:使用 hasNext() 和 next() 读取 "x=" 和 "y=" 标记,然后使用 nextInt() 读取整数。您还需要 String 的 equals() 方法。
import java.util.Scanner;
import java.io.*;
class Separatesums {
public static void main(String[] args) throws IOException {
int sumx = 0, sumy = 0, num = 0;
File file = new File("input.txt");
Scanner scan = new Scanner(file);
while (scan.hasNext()) {
if (scan.hasNext.equals("x")) {
num = scan.nextInt();
sumx = sumx + num;
} else {
if (scan.hasNext.equals("y")) {
num = scan.nextInt();
sumy = sumy + num;
}
}
}
System.out.println("Sum x is: " + sumx + " Sum y is: " + sumy);
}
}