java.lang.Integer cannot be cast to java.lang.String 解决办法
2017-05-29 11:03
716 查看
编辑jtable的表格中的数据,原本是int类型的(如13),手动编辑后(如变成16),此时变成String类型了。
此时若要对提取出来的数据进行加减运算,则必然牵扯到String类型转换成int的问题。
当然,如果我们事先知道那些数据都是String类型,那也好办,直接用:
如图,黄色为手动修改后变成16的cell,此时用getValueAt获取三个cell的值,并用getClass获得其类别,得:
这里如果还是用
原因是后面两个cell值的类型是Integer,不能强制转换成String
解决办法是用:
jtable.getValueAt()函数返回的是Object子类,如开始的13返回的是Integer类型,而之后手动修改后返回的是String类型。
此时若要对提取出来的数据进行加减运算,则必然牵扯到String类型转换成int的问题。
当然,如果我们事先知道那些数据都是String类型,那也好办,直接用:
Integer.parseInt(str)但如果之前不知道,要怎么办呢?
如图,黄色为手动修改后变成16的cell,此时用getValueAt获取三个cell的值,并用getClass获得其类别,得:
class java.lang.String class java.lang.Integer class java.lang.Integer
这里如果还是用
Integer.parseInt((String)jtable.getValueAt()则会报错:java.lang.Integer cannot be cast to java.lang.String
原因是后面两个cell值的类型是Integer,不能强制转换成String
解决办法是用:
Integer.parseInt(jtable.getValueAt(xx,xx).toString()
相关文章推荐
- java.lang.String cannot be cast to com.alibaba.fastjson.JSONObject解决办法
- java.lang.Long cannot be cast to java.lang.Integer解决办法
- java.lang.Long cannot be cast to java.lang.Integer解决办法
- java.lang.Long cannot be cast to java.lang.Integer解决办法
- 关于使用动态代理创建代理对象是报错 java.lang.ClassCastException: $Proxy0 cannot be cast to 的解决办法
- 遇到的问题----java jsp做数据分页翻页时遇到 java.lang.Integer cannot be cast to java.lang.String
- session中Integer cannot be cast to java.lang.String
- JSONException:java.lang.String cannot be converted to JSONObject解决办法
- java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String
- java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.String错误的解决方法
- 类型转换错误类似java.math.BigDecimal cannot be cast to java.lang.Double 解决办法
- 解决java中的java.lang.Integer cannot be cast to java.lang.Double问题
- unexpected token: * 和 java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to 解决办法
- JSONObject 解析从网络获取的json数据时,java.lang.String cannot be converted to JSONObject解决办法(编码 UTF-8)
- java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.Integer解决
- JSONObject转换Int类型--java.lang.Integer cannot be cast to java.lang.String
- cannot be cast to java.lang.Comparable解决办法
- Validator问题及解决办法——java.lang.ClassCastException: org.apache.struts.validator.ValidatorForm cannot be cast to forms.RegisterForm
- java.lang.ClassCastException: java.math.BigDecimal cannot be cast to java.lang.String 解决
- cannot be cast to java.lang.Comparable解决办法