如何在Intent中检查存在的额外内容

use*_*872 3 android

当我试图获得额外的东西,我得到致命的Eroorr

try{
        Sdacha=getIntent().getExtras().getString("Sdacha");
        }
        catch(NullPointerException e){}
Run Code Online (Sandbox Code Playgroud)

我怎样才能检查存在的附加内容?

And*_*lva 15

试试这个,

if(getIntent().getExtras().containsKey("Sdacha"))
        {
        String  preview=getIntent().getExtras().getString("Sdacha");

        }
Run Code Online (Sandbox Code Playgroud)

编辑

同样如Evos建议的那样,还可以在上面的代码中添加一层Null检查.如果你确定附加内容不是null,那么上面的方法是好的.如果不遵循下面的那个.

 if(getIntent().getExtras()!=null)
        {
        if(getIntent().getExtras().containsKey("Sdacha"))
        {
        String  preview=getIntent().getExtras().getString("Sdacha");
        }
        }
Run Code Online (Sandbox Code Playgroud)