检查字段是否为空

时间:2017-01-17 15:11:59

标签: java if-statement exception null

下面是我的代码,我正在尝试检查xCoord是否为null,或者为空,因此我可以抛出异常。我该怎么办? 我尝试使用try / catch如果xCoord == null但是这不起作用。

String x = JOptionPane.showInputDialog("X Coordinate", "Enter an x coordinate");
int xCoord = Integer.parseInt(x);
String y = JOptionPane.showInputDialog("Y Coordinate", "Enter a y coordinate");
int yCoord = Integer.parseInt(y);
String width = JOptionPane.showInputDialog("Radius", "Enter the length of the radius");
int radius = Integer.parseInt(width);

3 个答案:

答案 0 :(得分:2)

一旦你xCoord已经迟到了。在尝试解析之前,您需要检查x

String x = JOptionPane.showInputDialog("X Coordinate", "Enter an x coordinate");
if (x == null || x.length() == 0) {
    // Throw a meaningful exception
}
int xCoord = Integer.parseInt(x);

答案 1 :(得分:1)

xCoordint,是一种原始类型。基元不能是null。它们保留给参考类型。

您可以做的是检查x是否为空。是真的吗?是的,它可以。如果用户没有点击null(取消,esc,X),它就会OK

所以检查它的正确方法是:

String x = JOptionPane.showInputDialog("X Coordinate", "Enter an x coordinate");
if (x == null || x.isEmpty()) {
    //throw Exception or set x to "0" - I'll set to 0
    x = "0";
}
int xCoord = Integer.parseInt(x);

答案 2 :(得分:1)

xCordint,是原生类型,不能为空。从不。

只有对象引用可以为null(例如,如果xCord定义为Integer xCord)。