String[] 选择只显示一次
String[] Choice only shows once
显然选择只显示一次,然后对每个位置重复该过程。我希望它一次性显示所有选项,我假设我需要循环遍历 String[] 选择。有什么想法吗?
List < Location > locations = eventController.listLocations();
for (Location locationCategories: locations) {
String[] choices = {
locationCategories.getLocationName()
};
String locationName = (String) JOptionPane.showInputDialog(null, "Område navn der skal tilføjes til eventet",
"Område", JOptionPane.QUESTION_MESSAGE, null,
choices,
choices[0]);
我了解到您想在单个 JOptionPane
中显示 所有 个选项。
如果我理解正确,请尝试以下代码(使用 stream API)
/*
* import java.util.stream.Collectors;
*/
List<Location> locations = eventController.listLocations();
String[] choices = locations.stream()
.map(Location::getLocationName)
.collect(Collectors.toList())
.toArray(new String[]{});
String locationName = (String) JOptionPane.showInputDialog(null,
"Område navn der skal tilføjes til eventet",
"Område",
JOptionPane.QUESTION_MESSAGE,
null,
choices,
choices[0]);
显然选择只显示一次,然后对每个位置重复该过程。我希望它一次性显示所有选项,我假设我需要循环遍历 String[] 选择。有什么想法吗?
List < Location > locations = eventController.listLocations();
for (Location locationCategories: locations) {
String[] choices = {
locationCategories.getLocationName()
};
String locationName = (String) JOptionPane.showInputDialog(null, "Område navn der skal tilføjes til eventet",
"Område", JOptionPane.QUESTION_MESSAGE, null,
choices,
choices[0]);
我了解到您想在单个 JOptionPane
中显示 所有 个选项。
如果我理解正确,请尝试以下代码(使用 stream API)
/*
* import java.util.stream.Collectors;
*/
List<Location> locations = eventController.listLocations();
String[] choices = locations.stream()
.map(Location::getLocationName)
.collect(Collectors.toList())
.toArray(new String[]{});
String locationName = (String) JOptionPane.showInputDialog(null,
"Område navn der skal tilføjes til eventet",
"Område",
JOptionPane.QUESTION_MESSAGE,
null,
choices,
choices[0]);