java - 如何检查变量是否不是数字? java

标签 java parseint

我应该如何检查我的变量是否与数字不同(例如它是字符或字符串)。我应该在 if 语句中放入什么? x 和 y 从控制台读取

x = Integer.parseInt(Terminal.readLine());
y = Integer.parseInt(Terminal.readLine());

if () {
    bombInput = false;
    Terminal.printLine("Wrong input. Try again");
} else {
    bombInput = true;
}

最佳答案

try {
    x = Integer.parseInt(Terminal.readLine());
    //it's an int
} catch(NumberFormatException e) {
    //not an integer
}

但是如果开销不是太多,您也可以创建一个实用函数:

public static boolean isInteger(final String s) {
    try {
        Integer.parseInt(s);
        return true;
    } catch(NumberFormatException e) {
        return false;
    }
}

然后:

String xAsString = Terminal.readLine();
if(isInteger(xAsString)){
    x = Integer.parseInt(xAsString);
} else {
    // :(
}

关于java - 如何检查变量是否不是数字? java ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24249911/

相关文章:

javascript - 即使使用 parseInt,我也无法从输入元素获取数值

java - readLine() 永远不会停止读取

Java Spring MVC View 渲染并将 ArrayList<CustomModel> 通过表单提交绑定(bind)回 Controller

JavaScript 按位掩码

java - Tess4J:结果字符串无法解析为int

node.js - 警告 : Received NaN for the `value` attribute. 如果这是预期的,请将该值转换为字符串。多部分形式的输入

使用谷歌自定义搜索 API 的 Java 代码

java - 在另一个线程上更新 DefaultListModel

java - jackson json 解析器异常

java - 为什么在将 String Array 转换为 int Array 时出现 NumberFormatException?