【问题标题】:Android Studio edit text numeric typeAndroid Studio 编辑文本数字类型
【发布时间】:2017-05-23 00:49:48
【问题描述】:

我需要将一个整数值存储到数据库中,所以我需要将文本字段的值转换为整数,并且由于某种原因我得到了这个异常:

java.lang.NumberFormatException: Invalid int: "android.widget.EditText{431fbec VFED..CL. ........ 0,250-1080,386 #7f0b0076

我将editText 设置为数字类型,但是当我想将该字段的值添加到整数变量时,我得到了上面的异常。

Integer year = Integer.parseInt(editTextYear.toString());

这行代码就是问题所在;我尝试先创建字符串,然后将值解析为 int,但它不起作用。

【问题讨论】:

  • 遇到异常时您的输入是什么?

标签: java android parsing integer


【解决方案1】:

使用getText() 属性从EditText 获取输入。对象上的toString() 属性将以String 形式返回给您的对象表示形式。

final String input = editTextYear.getText().toString(); // To get input and 
                                                       // then parse it
if(input!= null)
Integer year = Integer.parseInt(input);

【讨论】:

    【解决方案2】:

    Rasi 基本上是正确的,但我会使用 isEmpty 而不是 null。

    所以不是

    editTextYear.toString()
    

    应该是

    editTextYear.getText().toString()
    

    但为了避免空指针异常,请执行以下操作:

    if(!input.isEmpty)
    

    避免出现空值或空值

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-07-27
      • 2020-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-11
      • 1970-01-01
      相关资源
      最近更新 更多