Java 是否可以通过get String extra将我们通过intent获得的字符串值转换为integer.parseInt(字符串)的整数
在运行时,应用程序发生崩溃这种情况是因为您试图解析与整数不匹配的Java 是否可以通过get String extra将我们通过intent获得的字符串值转换为integer.parseInt(字符串)的整数,java,android,android-intent,nullpointerexception,Java,Android,Android Intent,Nullpointerexception,在运行时,应用程序发生崩溃这种情况是因为您试图解析与整数不匹配的字符串,为了避免这种情况,请使用 NumberFormatException-如果字符串不包含可解析整数 另外,“19”是你用来在你的意图中添加额外信息的额外信息的名称,对吗 String a=qw.getStringExtra("19"); int b= Integer.parseInt(a); 你的意思是:stringa=qw.getStringExtra(“someStringName”);int b=整数.parseIn
字符串
,为了避免这种情况,请使用
NumberFormatException-如果字符串不包含可解析整数
另外,“19”是你用来在你的意图中添加额外信息的额外信息的名称,对吗
String a=qw.getStringExtra("19");
int b= Integer.parseInt(a);
你的意思是:
stringa=qw.getStringExtra(“someStringName”);int b=整数.parseInt(a)
您是否尝试过检查a
的值?我的意思是它是否可以通过字符串a=qw.getStringExtra(“19”);解析为int
,我的意思是,我在a中捕获的值被分配为键19@FrankN.SteinYes,它可以解析为int@AbubakkarRangaraYou不能使用数字作为键。你甚至不能创建一个名为19(或任何其他数字)的变量或常量。@JordiCastilla但是分配给键的值可以解析为int,它是--“10”(双引号,因为我已经声明它为String c=“10”)“10”
是一个正确的字符串,可以解析为int=10
,我现在关心的是:您在创建意图时使用,putExtra(“19”,c)
?记住:intent.putExtra(EXTRA\u NAME,EXTRA\u VALUE)
在你的代码中,getStringExtra(“19”)
你正在用EXTRA\u NAME=“19”
调用一个额外的,你明白我的意思了吗?你说对了,我犯了一个愚蠢的错误,谢谢你@如果一个错误让你理解了一个你永远不会忘记的概念,我不会抱怨或者认为它是愚蠢的。当您是一个有经验的用户时,这是愚蠢的,但对于初学者来说,这是您必须采取的必要步骤。如果你有时间,请
String a=qw.getStringExtra("19"); // 19 is the extra name, right???
int b = 0;
try {
b= Integer.parseInt(a);
} catch (NumberFormatException e) {
// tell error because extra string is not an integer number
}