IT干货网

java : convert string value to int

pander-it 2025年12月25日 编程设计 70 0

JTable 中,我尝试获取从 [行 1 到 ..行尾] 的每一列的值(字符串),并计算值的总和,如下所示:

final ArrayList<String>ValuesList = new ArrayList<String>(); 
final int nb = myTable.getRowCount(); 
int sum=0; 
 
for (int i = 1; i < nb; i++) 
{ 
    String columnValue = myTable.getColumnValue(i, columnName); 
 
    sum=sum+Integer.parseInt(columnValue); 
 
    ValuesList .add(columnValue); 
} 

但是我得到了:

java.lang.NumberFormatException: For input string: "" 
    at java.lang.NumberFormatException.forInputString(Unknown Source) 
    at java.lang.Integer.parseInt(Unknown Source) 
    at java.lang.Integer.parseInt(Unknown Source) 

请您参考如下方法:

您的表格中至少有一个空单元格。

这里有一个建议:

try { 
   sum += Integer.parseInt(columnValue); 
} catch (NumberFormatException nfe) { 
  // the cell is either empty or not an integer number 
  // will be treated as zero (0) 
} 

注意,getColumnValue(int i, String name) 方法没有为 javax.swing.JTable 定义。如果您使用 JTable 的子类,那么错误也可能出在该类/方法中:它可能返回一个空字符串而不是单元格值。


评论关闭
IT干货网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!