Java 如何将项目添加到匹配的列表中?
在处理每个国家/地区时,如何仅添加该国家/地区具有匹配国家/地区id的语言Java 如何将项目添加到匹配的列表中?,java,Java,在处理每个国家/地区时,如何仅添加该国家/地区具有匹配国家/地区id的语言 private List<String> readCountryLanguages(Statement sqlStatement, List<Country>countries) throws SQLException { List<String> languages = new ArrayList<>(); for (Country country :
private List<String> readCountryLanguages(Statement sqlStatement, List<Country>countries) throws SQLException {
List<String> languages = new ArrayList<>();
for (Country country : countries ) {
ResultSet resultSet = sqlStatement.executeQuery("SELECT language FROM COUNTRY_LANGUAGE");
while (resultSet.next()) {
String language = new String(resultSet.getString("Languages"));
Country obj = new Country(0, language, 0, 0);
obj.getId();
}
}
return languages;
}
private List readCountryLanguages(语句sqlStatement,Listcountries)抛出SQLException{
列表语言=新的ArrayList();
适用于(国家:国家){
ResultSet ResultSet=sqlStatement.executeQuery(“从国家/地区选择语言”);
while(resultSet.next()){
字符串语言=新字符串(resultSet.getString(“语言”);
国家对象=新国家(0,语言,0,0);
obj.getId();
}
}
返回语言;
}
不确定COUNTRY_语言的表结构,但您可以将sql查询更新为类似的内容
SELECT language FROM COUNTRY_LANGUAGE WHERE country='" + country.getName() + "'
在这里,我假设您的国家语言表中有一列“country”,可以通过调用country.getName()
从country对象检索国家名称。但是您可以使用实际实现中的确切方法
country.getId()
ResultSet ResultSet=sqlStatement.executeQuery(“从国家/地区选择语言,其中id='countryIdVariable'”)代码>
正如Asura的menthion所说,首先更改sql查询,该查询返回contryId为“某物”的语言 然后在while循环中,使用add()方法将每个语言添加到语言中,如下所示:
while (resultSet.next()) {
String language = resultSet.getString("Languages");
// add to list
languages.add(language);
}
}