为什么我不能将整数转换为字符串?

时间:2021-02-04 20:44:50

标签: java string casting integer

我收到此错误 java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String at line "case 0"。为什么我不能将 Integer 转换为 String 以及如何解决这个错误?

@Override
public void setValueAt(Object value, int row, int column) {

    switch (column) {
            case 0: user.get(row).setId(Integer.parseInt((String)value)); break;
            case 1: user.get(row).setUsername((String)value); break;
            case 2: user.get(row).setPassowrd((String)value); break;
            case 3: user.get(row).setEmail((String)value); break;
 
            
    }

    this.fireTableCellUpdated(row, row);
}

2 个答案:

答案 0 :(得分:0)

user.get(row).setId(Integer.parseInt(String.valueOf(value)));

答案 1 :(得分:0)

<块引用>

得到这个错误 java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String at line "case 0"

从错误来看,我认为 Object 已经是一个整数。所以只需执行以下操作:

user.get(row).setId((Integer)value);

快速演示:

Object a = 10;
int x = (Integer) a;
System.out.println(x);