gpt4 book ai didi

java - GWT 组合框按时间顺序排列

转载 作者:行者123 更新时间:2023-12-01 15:57:55 24 4
gpt4 key购买 nike

我有 GWT ComboBox 小部件(ListBox+TextBox)。用户可以在该小部件中输入一些文本,或者通过单击下拉箭头从以前存在的文本列表中进行选择。

所以,我有一个 ArrayList ,当用户输入文本并单击“搜索按钮”时,如果输入的文本存在于 ArrayList 中,我将执行搜索,如果不存在,我将文本添加到 ArrayList 中。

然后,当我需要在 View 中显示 ComboBox 时,我将迭代 ArrayList 并将 Arraylist 中的每个字符串添加到 ComboBox。

组合框中值的显示方式不是按时间顺序排列的。最新输入的文本位于组合框的底部。我怎样才能使其按时间顺序排列?

我可以反转列表并将其添加到我的 ComboBox 中。但是当用户选择已经存在的文本时,问题就出现了。(我可以子列出 ArrayList ,将所选项目推到顶部并进行调整子列表并将其添加回主ArrayList,但我觉得它太长并且没有效果)

那么对于我正在使用的数据结构(ArrayList)有什么建议吗?这可以让我的任务更轻松?

抱歉说得太详细了,但我总觉得有总比没有好。

最佳答案

此示例代码是否按照您想要的方式管理条件列表:

import java.util.*;
public class ListManager {

public static void main(String[] args) {
String[] items = {"snow", "rain", "ice", "sleet", "ice", "sunny"};
List<String> criteriaList = new ArrayList<String>();
String criteria;
for (String newCriteria : items) {
if (criteriaList.remove(newCriteria)) {
System.out.println(newCriteria + " was in the list already");
}
criteriaList.add(0, newCriteria);
System.out.println();
System.out.print("List is: ");
for (String x : criteriaList) {
System.out.print(x +" ");
}
System.out.println();
}
}

}

输出为:

列表是:雪

列表是:雨雪

列表为:冰雨雪

列表为:雨夹雪冰雨雪

ice 已经在列表中

列表为:冰雨夹雪

列表为:晴天冰雨夹雪

关于java - GWT 组合框按时间顺序排列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4693994/

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