为什么String转换int 程序就报错了

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if(requestCode == 1 && resultCode == 2){
        String num = data.getStringExtra("data");
        //int b = Integer.parseInt(num);
        //String a = (String) View.getText();
        //char c = a.charAt(b);
        //input.setText(c);
    }
}

到String num都是对的! 一转int 输出b都是错什么鬼啊

One世3347965
浏览 2829回答 8
8回答

xleon

integer.valueof();  试试

星箜下

看了下楼主回复,楼下的回答还没能解决问题?      那我怀疑问题可能不在String转int 。试了试 , 发现程序在input.setText()上抛异常,-----没找到资源ID------ 。editText.setText(CharSequence text);editText.setText(int resID);editText有两个setText方法,程序调用了第二个方法,将char 强转为 int  发现R中不存在该int,于是报NOTFOUNDEXCEPTION。因为CharSequence 是个接口,而Character类并没有实现该接口,实现该接口的是String类。所以,可以String c_String = String.valueOf(c);再input.setText(c_Stirng);  楼主能把自己的错误日志发错来最好了,这样的话,别人也是猜测,因为我的电脑环境和你的不同,运行结果也许也不同的。

BlueFishQ

首先你得确保你的num不包含任何空格或其他字符,num要转为数据只能包含数字字符:下列两行代码都会失败:System.out.println(Integer.parseInt("12 3")); System.out.println(Integer.parseInt(" 123"));Exception in thread "main" java.lang.NumberFormatException: For input string: "12 3"你可以调试下查看num的值,然后对num进行相应的处理!

Corbie亚东

num.trim()

慕先生4653473

尝试获取的时候trim一下,是不是有空格或换行之类的。

蜂之谷

报什么错?

一条小咸鱼

data.getIntExtra();
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android
Java