示例.java
public class Sample {
static List<Object> list1 = new ArrayList<Object>();
static List<String> list = new ArrayList<String>();
private String value;
private String type;
static List<String> types = new ArrayList<String>();
public Item() throws ParseException {
JsontoList j = new JsontoList();
// types = Arrays.asList("green", "yellow", "red");
array = j.getarray();
list1 = j.toList(array);
list = j.getList(array);
types=list;
}
public List<String> getTypes() {
return types;
}
//public void setTypes(List<String> types) {
//this.types = types;
//}
使用上面的代码..我能够成功显示 Bootsfaces 表。单击添加命令按钮..文本字段和下拉菜单在每一列中一一添加,输入值以 JSON 格式保存。 但问题是..每当单击ADD时..以及文本字段和下拉列表..每次都会添加数据库中的下拉值,从而产生许多值。
虽然我尝试不从项目构造函数中的数据库访问下拉列表值..但这些值没有加载到网页中,除非在构造函数中。
请建议任何其他方法。任何帮助将不胜感激。提前谢谢您。
最佳答案
我已经找到了解决方案并且有效-
在Item.java中
public Item() throws ParseException {
JsontoList j = new JsontoList();
array = j.getarray();
list1 = j.toList(array);
list = j.getList(array);
List<String> types = new ArrayList<String>();
types = list;
//Added this piece of code below
Set<String> hs = new HashSet<>();
// add elements to List types, including duplicates
hs.addAll(types);
types.clear();
types.addAll(hs);
}
为了删除集合中的重复项,我们应该考虑为什么要使用允许重复的集合。 删除重复元素的最简单方法是将内容添加到 Set 中(不允许重复),然后将 Set 添加回 ArrayList。
关于java - java 构造函数中 List<String> 中的重复值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41545169/