gpt4 book ai didi

java - 如何选取不为空的最新值?

转载 作者:行者123 更新时间:2023-12-01 11:15:07 25 4
gpt4 key购买 nike

我的数据如下所示:

fy|cycle|lea|course|section|description|ssn|uniq_stu_id|grade_1|grade_2|grade_3|grade_4|credit|Date
22|7|6003127|420000|4|BIOLOGY|6435|530|D|D|NULL|NULL|NULL|2012
22|7|6003127|420000|4|BIOLOGY|4328|152|NULL|NULL|B|NULL|NULL|2012
22|7|6003127|421000|1|CHEMISTR|429|1872|B|B|NULL|NULL|NULL|2012
22|7|6003127|422000|1|PHYSICS|1178|950|B|A|NULL|C|NULL|2012

我对“grade_1”、“grade_2”、“grade_3”和“grade_4”列感兴趣。我想选择最新的年级。 1,2,3和4是学期,所以在第一行,我想从Grade_2中选择D。同样,从最后一行,我想从 Grade_4 中选择 C。在我的最终输出中,我只需要一列替换这 4 个成绩列,显示最终或最新成绩以及其他信息列。

我的做法如下:

FileReader fileReader = new FileReader(inputFile);
BufferedReader br = new BufferedReader(fileReader);

while ((line = br.readLine()) != null) {
String[] parts = line.split("\\|");
System.out.println(parts[11].toString());
if (parts[11].toString() != "NULL") {
final_grade = parts[11].toString();
} else if (parts[10].toString() != "NULL") {
final_grade = parts[10].toString();
} else if (parts[9].toString() != "NULL") {
final_grade = parts[9].toString();
} else if (parts[8].toString() != "NULL") {
final_grade = parts[8].toString();
}
else {
final_grade = "N/A";
}
}

使用此代码,我的输出给出所有空值。我无法理解我错在哪里。有人可以帮忙吗?

最佳答案

检查字符串是否相等必须使用 equals() 来完成.

对字符串使用 == 会比较对象而不是实际值。

关于java - 如何选取不为空的最新值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31922968/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com