gpt4 book ai didi

java - 如何将 ArrayList 引用到 HashMap 中

转载 作者:行者123 更新时间:2023-11-29 10:29:39 24 4
gpt4 key购买 nike

我有一个 getCourses 的 ArrayList 和下面的 ComboBox 的 HashMap:

public class QueryCourses {    
public static ArrayList<Courses> getCourses() throws ClassNotFoundException, SQLException {
String queryCourses = "SELECT course_id, course_title FROM tblcourses";
Connection conn = DbConnection.ConnectDB();
Statement stmt = conn.createStatement();
ResultSet rs;
rs = stmt.executeQuery(queryCourses);
ArrayList<Courses> courseList = new ArrayList<>();
while (rs.next()) {
Courses crse = new Courses(rs.getInt("course_id"), rs.getString("course_title"));
courseList.add(crse);
}
return courseList;
}

public HashMap<String, Integer> hashMap(){
HashMap<String, Integer> map = new HashMap<>();
final ComboBox<Courses> cmbCourse = new ComboBox(courseList.getItems());
Connection conn = DbConnection.ConnectDB();

try {
Statement stmt = conn.createStatement();
String qry = "SELECT `course_id`, `course_title` FROM `tblcourses`";
ResultSet rs = stmt.executeQuery(qry);
Courses crse;

while (rs.next()) {
crse = new Courses(rs.getInt(1), rs.getString(2));
cmbCourse.addItem(crse);
}
} catch (SQLException ex) {
Logger.getLogger(NewStudentController.class.getName()).log(Level.SEVERE, null, ex);
}

return map;
}

}

我想将 ArrayList 引用到 ComboBox 的 HashMap 上,其中包含类(class) id 及其标题,但我不知道引用 getCourses 或 courseList 中的哪一个。其中任何一个都会给我带来错误,我是否遗漏了什么或什么?然后,这会将标题输出到 ComboBox 上,并返回数据库插入的 key 。

最佳答案

ArrayList不能引用HashMap。您需要迭代数组列表(来自 getCourses() )并将每个元素单独设置到 map 。

类似于:

for(Course crse : getCourses()){
map.put(crse.getId(),crse.getTitle() );
}

关于java - 如何将 ArrayList 引用到 HashMap 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47651870/

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