String TypedMaxNumber = MaxValue.getText();
int Max = Integer.parseInt(TypedMaxNumber);
我正在尝试这样做,我在文本字段中输入了1我收到错误。
答案 0 :(得分:3)
在使用之前尝试检查字符串TypedMaxNumber
:
if(TypedMaxNumber!=null && !TypedMaxNumber.equals(""))
int Max = Integer.parseInt(TypedMaxNumber);
答案 1 :(得分:0)
parseInt
类中的方法Integer
会引发NumberFormatException
。以下是文档:https://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html#parseInt(java.lang.String)
您必须添加异常处理以确保您的代码处理非整数的输入字符串。
请尝试以下代码:
String TypedMaxNumber = MaxValue.getText();
int Max = 0; // Assuming 0 is default if input string cannot be parsed to int
if (TypedMaxNumber != null && TypedMaxNumber.trim().length() > 0)
{
try
{
Max = Integer.parseInt(TypedMaxNumber);
}
catch (NumberFormatException nfe)
{
// set to default value (here it is assumed as 0) if the string cannot be parsed to int.
Max = 0;
}
}
答案 2 :(得分:0)
如果它是NaN
,您甚至可以将其编写为执行任务String TypedMaxNumber = MaxValue.getText();
int Max;
try {
Max = Integer.parseInt(TypedMaxNumber);
} catch (Exception e) {
System.out.println("TypedMaxNumber is not a number");
}