【问题标题】:Include plus or minus in sum program在 sum 程序中包含加号或减号
【发布时间】:2020-04-25 04:27:35
【问题描述】:

这是一个要求用户输入(数字)并打印 sum 语句的程序。在用户输入 END 之前一直有效。它工作正常,但是当输入负整数时,会返回一个空的打印语句。非常感谢您抽出宝贵时间提供有关如何在总和中包含负整数的任何帮助或见解!

public static void main(String[] args){
Scanner scan = new Scanner(System.in);

    int sum = 0; 
    String val = "";
while (val.equals("")) 
{
    System.out.print("Enter a number: ");
    val = scan.nextLine();
if (val.equalsIgnoreCase("end")) {   
    break;      
}
else if (val.matches("\\d+")) {   
    sum += Integer.parseInt(val);
    System.out.println("Sum is now: " + sum);   
}
else {
    System.err.println("");
}
val = "";  
}   
}
}

【问题讨论】:

标签: java sum addition subtraction


【解决方案1】:

这是因为\\d+ 选择了一个或多个号码。而负数之前的- 不被视为数字,因此它与您的正则表达式不匹配。

尝试使用类似的东西:

-?\\d+

【讨论】:

  • 当 OP 明确使用类型时为什么要包含小数?
猜你喜欢
  • 2023-03-30
  • 2013-01-15
  • 1970-01-01
  • 2012-11-19
  • 1970-01-01
  • 1970-01-01
  • 2013-11-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多