java无法将字符串更改为整数,因为负号跟在数字后面
我正在使用Java读取CSV文件,并对给定的项目进行一些数据分析。我读入的几个数据点是一组不同的数字,范围从-999到999。我想将这些数字相互比较,所以我首先将字符串转换为整数。 我遇到的问题是,CSV文件保存负数,负号紧跟在数字(1-)之后。这会引发NullFormatException。我觉得有一个简单的方法来解决这个问题,我忽略了。任何帮助都会很好
假设随机数据是{1,19,20,7,8},我需要{1,-19,-20,7,8}
int[] nnaOH = new int[x];
int[] nwOH = new int[x];
int[] nuaOH = new int[x];
for (int z = 1; z < x; z++){
nnaOH[z] = Integer.parseInt(naOH[z]);
nwOH[z] = Integer.parseInt(wOH[z]);
nuaOH[z] = Integer.parseInt(uaOH[z]);
}
# 1 楼答案
试试这样。它将检测结尾处的连字符,并在解析数字之前将其删除,将其设置为负值
# 2 楼答案
可以使用DecimalFormat以自定义格式解析整数:
输出: