Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么解析为整数时会出现异常?_Java_Android - Fatal编程技术网

Java 为什么解析为整数时会出现异常?

Java 为什么解析为整数时会出现异常?,java,android,Java,Android,我不明白为什么这个Integer.parseInt会出现异常,它是NullpointerException try { int numberOfPictures = Integer.parseInt(editTextNumberOfGames .getText().toString()); Toast toast =Toast.makeText(getBaseContext(), "ratt", Toast.LENGTH_SHOR

我不明白为什么这个Integer.parseInt会出现异常,它是NullpointerException

try
{
    int numberOfPictures = Integer.parseInt(editTextNumberOfGames
                        .getText().toString()); 
    Toast toast =Toast.makeText(getBaseContext(), "ratt", Toast.LENGTH_SHORT); 
                toast.show();
} catch (Exception e)
{
    Toast toast =Toast.makeText(getBaseContext(), "fel", Toast.LENGTH_SHORT); 
                toast.show();
}

由于
editTextNumberOfGames
为空,它会抛出一个expecption

正确初始化editTextNumberOfGames,或者无论出于何种原因,您无法对其进行初始化,那么它将被初始化

int numberOfPictures;
if (editTextNumberOfGames != null) {
   numberOfPictures = Integer.parseInt(editTextNumberOfGames.getText());
}

当您使用此代码时,是否使用调试器验证editTextNumberOfGames是否不为null

您可以临时分解Integer.parseInt(editTextNumberOfGames.getText().toString())语句,以查看复合语句的哪个部分导致了异常


正如ratchet freak在评论中指出的那样,我没有这样做:

editTextNumberOfGames=(EditText)findViewById(R.id.editTextNrOfPictures)


感谢所有帮助。

editTextNumberOfGames是否已初始化?检查editTextNumberOfGames.getText().toString()返回的是什么堆栈跟踪?是空指针异常还是NUmberFormatException?停止接受异常,在
catch{}
块中执行
e.printStackTrace()
,然后检查这些日志或为我们提供它们。@ratchetfreak:我在findViewById中没有找到它。。。。感谢
getText()
将永远不会返回
null
。他的对象名为
editTextNumberOfGames
,我们正在使用Android。你真的认为这不是一个
EditText
?我的答案完全正确,他没有正确初始化他的editTextNumberOfGames。正如我写给你的“或者最好正确初始化editTextNumberOfGames。”看到我的答案了吗