当EditText为空时,Android简单随机数生成器崩溃
长话短说,我的基本应用程序只有一个文本视图、2个EditText(表示随机数的最小值和最大值)和一个按钮。如果提交了最小值和最大值,一切都正常,但当我留下空应用程序崩溃时(当然应该是崩溃的),但当我尝试添加一些If以避免出现这种情况时,它并没有真正起到作用。 发生崩溃的代码片段:当EditText为空时,Android简单随机数生成器崩溃,android,Android,长话短说,我的基本应用程序只有一个文本视图、2个EditText(表示随机数的最小值和最大值)和一个按钮。如果提交了最小值和最大值,一切都正常,但当我留下空应用程序崩溃时(当然应该是崩溃的),但当我尝试添加一些If以避免出现这种情况时,它并没有真正起到作用。 发生崩溃的代码片段: int minimumValue = 1; int maximumValue = 2; int randomValue = 3; if(!minimum.getText().toString().equals(""))
int minimumValue = 1;
int maximumValue = 2;
int randomValue = 3;
if(!minimum.getText().toString().equals("")) {
minimumValue = Integer.parseInt(minimum.getText().toString());
}
if(maximum.getText().toString().equals("")) {
maximumValue = Integer.parseInt(maximum.getText().toString());
}
randomValue = minimumValue + (int)(Math.random() * ((maximumValue - minimumValue) + 1));
textview.setText("" + randomValue);
我想你错过了这里的“!”
尝试:
\\if empty
if(!maximum.getText().toString().equals("")) {
maximumValue = Integer.parseInt(maximum.getText().toString());
}
我想你错过了这里的“!”
尝试:
\\if empty
if(!maximum.getText().toString().equals("")) {
maximumValue = Integer.parseInt(maximum.getText().toString());
}
我想你错过了这里的“!”
尝试:
\\if empty
if(!maximum.getText().toString().equals("")) {
maximumValue = Integer.parseInt(maximum.getText().toString());
}
我想你错过了这里的“!”
尝试:
\\if empty
if(!maximum.getText().toString().equals("")) {
maximumValue = Integer.parseInt(maximum.getText().toString());
}
不要使用空字符串进行检查。可能会有输入更多空格的机会,这会导致您抛出
异常
当数据不是数字时,也有可能获得NumberFormatException
因此,像这样修改代码并尝试
if (minimum.getText().toString().trim().length() > 0) {
try {
minimumValue = Integer.parseInt(minimum.getText().toString());
} catch (NumberFormatException e) {
}
}
if (maximum.getText().toString().trim().length() > 0) {
try {
maximumValue = Integer.parseInt(maximum.getText().toString());
} catch (NumberFormatException e) {
}
}
不要使用空字符串进行检查。可能会有输入更多空格的机会,这会导致您抛出
异常
当数据不是数字时,也有可能获得NumberFormatException
因此,像这样修改代码并尝试
if (minimum.getText().toString().trim().length() > 0) {
try {
minimumValue = Integer.parseInt(minimum.getText().toString());
} catch (NumberFormatException e) {
}
}
if (maximum.getText().toString().trim().length() > 0) {
try {
maximumValue = Integer.parseInt(maximum.getText().toString());
} catch (NumberFormatException e) {
}
}
不要使用空字符串进行检查。可能会有输入更多空格的机会,这会导致您抛出
异常
当数据不是数字时,也有可能获得NumberFormatException
因此,像这样修改代码并尝试
if (minimum.getText().toString().trim().length() > 0) {
try {
minimumValue = Integer.parseInt(minimum.getText().toString());
} catch (NumberFormatException e) {
}
}
if (maximum.getText().toString().trim().length() > 0) {
try {
maximumValue = Integer.parseInt(maximum.getText().toString());
} catch (NumberFormatException e) {
}
}
不要使用空字符串进行检查。可能会有输入更多空格的机会,这会导致您抛出
异常
当数据不是数字时,也有可能获得NumberFormatException
因此,像这样修改代码并尝试
if (minimum.getText().toString().trim().length() > 0) {
try {
minimumValue = Integer.parseInt(minimum.getText().toString());
} catch (NumberFormatException e) {
}
}
if (maximum.getText().toString().trim().length() > 0) {
try {
maximumValue = Integer.parseInt(maximum.getText().toString());
} catch (NumberFormatException e) {
}
}