Java扫描程序检查string或int

时间:2016-11-25 17:30:49

标签: java java.util.scanner

我有一个扫描仪在运行,用户可以输入字符串或整数。 用户只能输入特定字符,例如a,e,u,r,数字可以是任何字符。如果是一个字母,则检查运行,但如果用户输入了数字,则检查失败。

String temp = scanner.next();
String[] validToken = {"x","e","u","r","+","-","/","*",};
for (String validToken1 : validToken) {
    if (temp.equals(validToken1) || temp.equals("\\d+")) {
        tokenCheck = true;
    } 
}

2 个答案:

答案 0 :(得分:2)

equals替换为matches时应该修复,因为使用等于检查字符串是否为字面\d+,它不是正则表达式。

答案 1 :(得分:2)

更改等于matchesmatches用于检查字符串是否与特定正则表达式匹配。

if (temp.equals(validToken1) || temp.matches("\\d+")) {
                     tokenCheck = true;
                }