Java~~ 2022-11-05 15:38 采纳率: 100%
浏览 23
已结题

Java输入输出流,麻了

读取txt中的数据来计算,求求解
缺一个识别行末的条件来实现

img

import java.io.File;
import java.util.Scanner;
public class ShiYan4_3 {
    public static void main(String args[]) throws Exception {

        String filename = "D:\\data3.txt";
        Scanner scanner = new Scanner(new File(filename));
        while(scanner.hasNext()) {
            int op1 , op2, op3,i = 1,result = 0;
            String operator = "";
            String operator2 = "";
            String str;
            op1 = scanner.nextInt();
            operator = scanner.next();
            op2 = scanner.nextInt();
            while (scanner.hasNext()) {
                operator2 = scanner.next();
                op3 = scanner.nextInt();
                if (operator.equals("*")) {
                    op1 = op1 * op2;
                    operator = operator2;
                    op2 = op3;
                } else if (operator.equals("/")) {
                    op1 = op1 / op2;
                    operator = operator2;
                    op2 = op3;
                } else if (operator2.equals("*")) {
                    op2 = op2 * op3;
                } else if (operator2.equals("/"))
                    op2 = op2 / op3;
                else if (operator.equals("+")) {
                    op1 = op1 + op2;
                    operator = operator2;
                    op2 = op3;
                } else if (operator.equals("-")) {
                    op1 = op1 - op2;
                    operator = operator2;
                    op2 = op3;
                }
                if () {
                    System.out.println(op1 + op2);
                    break;
                }
            }
        }
        scanner.close();

    }
}

  • 写回答

1条回答 默认 最新

  • 涝山道士 2022-11-05 18:44
    关注

    你这一段看着,健壮性太差了,感觉多输一个数字或者字符赶紧就运行不起。

    不太明白是要做什么,你如果是想在行尾判断有无下一行的话:

    if (scanner.hasNextLine()) {
        System.out.println("result: " + op1 + op2);
        break;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月14日
  • 已采纳回答 11月6日
  • 创建了问题 11月5日

悬赏问题

  • ¥15 如何通过交互分析得出某高危患者对放疗获益更多
  • ¥15 相关性分析中,p<0.05, r=0.29,怎么评价相关性呢
  • ¥15 docker部署Mongodb后输入命令报错?
  • ¥15 将下列流程图转变成python程序代码
  • ¥15 我需要全国每个城市的最新小区名字等数据。
  • ¥15 开发一个小区生态的小程序
  • ¥15 如何解决Excel中dependent dropdown list 的问题
  • ¥15 MddBootstrapInitialize2失败
  • ¥15 LCD Flicker
  • ¥15 esp32在micropython环境下使用ssl/tls连接mqtt服务器出现以下报错Connected on 192.168.154.223发生意外错误: 5无法连接到 MQTT 代理,如何解决?