这是我的 autocompleteField 实现:
add(new AutoCompleteTextField<String>("hladaneSlovo") {
private static final long serialVersionUID = 1L;
@Override
protected Iterator<String> getChoices(String prefix) {
return hladaneSlova.startsWith(prefix).iterator();
}
});
我的 arrayList 中的方法 startWith 如下所示:
public List<String> startsWith(String prefix) {
if (prefix == null || prefix.isEmpty()) {
return this;
} else {
List<String> list = new LinkedList<String>();
for (String s : this) {
if (s.startsWith(prefix)) {
list.add(s);
}
}
return list;
}
}
所以我想在字段为空时获取所有值,但此实现不起作用。你能帮我吗?
最佳答案
代码看起来没问题。在检查 isEmpty()
之前,您可能需要另外 trim()
字符串,也许周围只是一些杂散空格。顺便说一句,子类化 java.util.ArrayList 是一个坏主意。您应该设计自己的类,在内部使用 List
。
关于java - 如何在空自动完成字段中返回 arrayList 的整个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11259709/