【问题标题】:Calculator Class error checking计算器类错误检查
【发布时间】:2015-05-13 15:23:33
【问题描述】:

我正在为我的 BigInteger Calculator 类做一些错误检查。如果输入在数字之间有一个空格,并且在这些数字之间没有有效的运算符(+、-、*、/、%、^)(如下面的数字),则它应该返回“错误”。有没有办法使用字符串方法检查这种情况?

应该返回错误,因为数字之间有空格并且它们之间没有运算符:

2 + 1 1 1 1 1 + 2 //在这种情况下,1之间没有运算符

2 2 2 //中间有空格

有效:

2 + 2

22 + 2 + 1

2 + 11111 + 2

【问题讨论】:

标签: java string parsing


【解决方案1】:

一种选择是使用String[] temp = [stringName].split(" "); 拆分字符串并检查其他索引是否为有效运算符。

【讨论】:

    【解决方案2】:

    也许您可以使用正则表达式来查找数字之间的空格。

    String input = "1+2 2 2";
    boolean found = Pattern.compile("[0-9]+\\s+[0-9]+").matcher(input).find();
    

    【讨论】:

      【解决方案3】:

      您无需专门查找数字之间的空格。事实上,除了分隔标记之外,您应该完全忽略空格。

      您只需要根据没有两个连续数字的语法的语法进行扫描和解析。或运营商。在任何时候,您都应该知道什么是预期的,什么不是。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-12-09
        • 1970-01-01
        • 2015-11-18
        • 1970-01-01
        • 2013-04-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多