0
public void onPass(View v)
    {

        String sn1=et1.getText().toString();
        String sn2=et2.getText().toString();

        int i1=Integer.parseInt(sn1);
        int i2=Integer.parseInt(sn2);
        Intent i=new Intent(this,Act2.class);
        i.putExtra("k1",i1 );
        i.putExtra("k2", i2);       
        startActivity(i);       

    }

日志猫

E/AndroidRuntime(671): Caused by: java.lang.NumberFormatException: unable to parse '20 ' as integer
4

4 回答 4

5

字符串末尾有一个空格。那就是问题所在。你需要修剪它。

于 2013-05-14T08:35:05.437 回答
4

您的输入末尾有一个空格。尝试 :

String sn1=et1.getText().toString().trim();
String sn2=et2.getText().toString().trim();
于 2013-05-14T08:35:58.830 回答
1
'20 ' // <<---- you have a whitespace at the end

您需要在解析之前对其进行修剪。

于 2013-05-14T08:36:11.760 回答
0

您只需要修剪字符串,因为最后有一个空格,您可以这样做:

int i1=Integer.parseInt(sn1.trim());
int i2=Integer.parseInt(sn2.trim());

或者 :

你可以像 zouzou 说的那样改变:

String sn1=et1.getText().toString().trim();
String sn2=et2.getText().toString().trim();
于 2013-05-14T08:52:08.887 回答