解决问题:java.lang.NumberFormatException:For input string: "null"
今天中午,在做数据清洗的时候,发现了这个数据格式错误,几次更改还是报错,最后发现,这里的“null”,其实就是“null”字符串,而不是String中的空值null。
因为这个数据是从mysql中传上来的,所以一直在看mysql中的数据,觉得是null,不是“null”,但是从mysql传到HDFS上时,它已经被转化成“null”了,所以,如果想要继续使用,就应该把判断条件改成判断字符串
int sum_mark;
if (subjective_mark.equals("null")){
sum_mark = Integer.valueOf(objective_mark);
}else {
sum_mark = Integer.valueOf(subjective_mark)+Integer.valueOf(objective_mark);
}
OK!!