我有一个包含三列的 JTable:
字符串、PropertyItem(自定义类)、字符串
PropertyItem 在表中显示为字符串,但类型为 PropertyItem。这是表格的示例行:
值掩码 | 格式约束 | 值掩码规则子类型
使用 Vector 获取表的数据:
List<Vector> displayedData = table_propertyDetails.getDataMatrix();
并像这样遍历表数据:
for(Vector row : displayedData) { ... }
现在,row.get(index) 函数用于获取第 0 列和第 2 列的类型转换为 String 的列数据。对于 PropertyItem 列,它作为 (PropertyItem) row.get(index) 完成。所以,到目前为止一切都很好,并且在正常的行列表/获取中没有出现任何问题。
现在,当编辑此表的第二列 (PropertyItem) 时,它会变成一个字符串,并且 (PropertyItem) row.get(index) 为该行返回错误:
java.lang.String 不能转换为 com.abc.xyz.model.PropertyItem
对于未编辑数据的所有其他行,此转换不会出现任何错误,但对于已编辑的行,则会导致此错误。
知道我可以在此时或在此之前将 String 转换回 PropertyItem 吗?