java.lang.NumberFormatException:无效的int:“”:错误

java.lang.NumberFormatException:无效的int:“”:错误,第1张

概述我正在做一些计算,但无法将字符串解析为int甚至是float.我寻找解决方案,并且在某个必须有空字符串的地方读取了它,但是我使用log.v("Valuee",e1.getText().toString());并且其打印的值证明该字符串不为空.我想念什么?这是logcatjava.lang.RuntimeException:Unabletostar

我正在做一些计算,但无法将字符串解析为int甚至是float.我寻找解决方案,并且在某个必须有空字符串的地方读取了它,但是我使用

log.v("Valuee",e1.getText().toString());

并且其打印的值证明该字符串不为空.
我想念什么?

这是logcat

@H_403_16@

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.farrukh.bmi/com.example.farrukh.bmi.Main2Activity}: java.lang.NumberFormatException: InvalID int: “”
at androID.app.ActivityThread.performlaunchActivity(ActivityThread.java:2195)
at androID.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
at androID.app.ActivityThread.access$800(ActivityThread.java:135)
at androID.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
at androID.os.Handler.dispatchMessage(Handler.java:102)
at androID.os.Looper.loop(Looper.java:136)
at androID.app.ActivityThread.main(ActivityThread.java:5017)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:515)
at com.androID.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
at com.androID.internal.os.ZygoteInit.main(ZygoteInit.java:595)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NumberFormatException: InvalID int: “”
at java.lang.Integer.invalIDInt(Integer.java:137)
at java.lang.Integer.parseInt(Integer.java:358)
at java.lang.Integer.parseInt(Integer.java:331)
at com.example.farrukh.bmi.Main2Activity.onCreate(Main2Activity.java:31)
at androID.app.Activity.performCreate(Activity.java:5231)
at androID.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
at androID.app.ActivityThread.performlaunchActivity(ActivityThread.java:2159)
at androID.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) 
at androID.app.ActivityThread.access$800(ActivityThread.java:135) 
at androID.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 
at androID.os.Handler.dispatchMessage(Handler.java:102) 
at androID.os.Looper.loop(Looper.java:136) 
at androID.app.ActivityThread.main(ActivityThread.java:5017) 
at java.lang.reflect.Method.invokeNative(Native Method) 

这是MainActivity.java

 public class Main2Activity extends AppCompatActivity {        @OverrIDe        protected voID onCreate(Bundle savedInstanceState) {            super.onCreate(savedInstanceState);            setContentVIEw(R.layout.activity_main2);          final   button b = (button) findVIEwByID(R.ID.button);          final   EditText e1 = (EditText) findVIEwByID(R.ID.editText2);          final   TextVIEw text = (TextVIEw) findVIEwByID(R.ID.textVIEw4);          final  String height = e1.getText().toString();          final int a = Integer.parseInt(height); //got error while parsing     b.setonClickListener(new VIEw.OnClickListener() {                @OverrIDe                public voID onClick(VIEw v) {                 //   Log.v("EditText",e1.getText().toString());                }            });        }    }

这是activity.xml

<button        androID:layout_wIDth="132dp"        androID:layout_height="wrap_content"        androID:layout_margintop="50dp"         androID:layout_gravity="center_horizontal"        androID:text="CliCK"        androID:clickable="true"        androID:ID="@+ID/button"/><EditText        androID:layout_wIDth="120dp"        androID:layout_height="wrap_content"        androID:inputType="number"        androID:ems="10"        androID:ID="@+ID/editText2"        androID:layout_gravity="center_horizontal"        androID:layout_margintop="20dp"        androID:gravity="center" />    <TextVIEw        androID:layout_wIDth="match_parent"        androID:layout_height="wrap_content"        androID:textAppearance="?androID:attr/textAppearanceLarge"        androID:ID="@+ID/textVIEw4"        androID:layout_gravity="center_horizontal"        androID:gravity="center"        androID:layout_margintop="20dp"        androID:textcolor="#3b9ff0" />

解决方法:

将这些行放在onClick()中

final  String height = e1.getText().toString();final int a = Integer.parseInt(height);

您正在onCreate()中获取e1的值,而在用户单击按钮时需要它

还需要检查高度是否具有任何值,为此检查Stuluske’s答案

总结

以上是内存溢出为你收集整理的java.lang.NumberFormatException:无效的int:“”:错误全部内容,希望文章能够帮你解决java.lang.NumberFormatException:无效的int:“”:错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1094578.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存