gpt4 book ai didi

java - 删除 Java 结果集中的重复行

转载 作者:行者123 更新时间:2023-11-30 05:57:55 25 4
gpt4 key购买 nike

我是 Java 初学者,在打印重复行时遇到问题。我有这个代码:

while (rs.next()) {

String curr_crn = rs.getString(2);

while(rs.next()) {
if(curr_crn != rs.getString(2)) {
String instructor = getInstructor(connection,
rs.getString(1),rs.getString(2));
String student = getStudent(connection,rs.getString(2));

detailLines.add(Library.rPad(rs.getString(1), COL1, ' ')
+ Library.rPad(rs.getString(2), COL2, ' ')
+ Library.rPad(rs.getString(3) + " " + rs.getString(4) +
" " +rs.getString(5), COL3, ' ')
+ Library.rPad(instructor, COL4, ' ')
+ newline
+ Library.rPad(student, COL1 ,' '));
}
}
}

如何将当前 crn 与其他 crn 进行比较,以免打印重复项?

谢谢!

最佳答案

可以删除内部 while 循环,因为它使代码变得复杂。您可以创建一个 HashSet 对象。然后,您可以启动 while 循环,并在打印详细信息后将 current_crn 存储在每次迭代的最后一行的集合中。代码应类似于以下内容:

HashSet hs = new HashSet();
while (rs.next()) {
String curr_crn = rs.getString(2);
if( ! hs.contains(curr_crn) ) {
String instructor = getInstructor(connection,
rs.getString(1),rs.getString(2));
String student = getStudent( connection,
rs.getString(2));

detailLines.add(Library.rPad(rs.getString(1),
COL1, ' ')
+ Library.rPad(rs.getString(2), COL2, ' ')
+ Library.rPad(rs.getString(3) + " " +
rs.getString(4) + " " +
rs.getString(5), COL3, ' ')
+ Library.rPad(instructor, COL4, ' ')
+ newline
+ Library.rPad(student, COL1 ,' '));
hs.add(curr_crn);
}
}

关于java - 删除 Java 结果集中的重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52837698/

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