gpt4 book ai didi

java - 根据 Object 中的 int 值将 ArrayList 拆分为多个
转载 作者:行者123 更新时间:2023-11-29 06:38:53 26 4
gpt4 key购买 nike

我有一个包含对象的 ArrayList,这些对象有多个值。

现在我想根据对象中的 int 值将此列表拆分为多个列表。

例如,如果:

2 对象有一个值为 1 的 int
3 对象有一个值为 3 的 int

所以 arraylist 有 5 个对象,我想得到:

2 个数组列表,1 个包含第一个对象 en 1 个包含第二个对象(如果有更多不同的 int 值,则更多)

对不起,如果它令人困惑..

最佳答案

首先像这样创建一个缓存:Map<Integer, List<YourObjectType>>

然后循环遍历您的每个对象,并使用您的整数访问上面的 Map , 如果值为 null,则创建一个新的 List并将其放入 Map ,然后将您的对象添加到 List .

最终结果将是一个包含两个条目的映射,每个条目都包含一个条目列表,其中以您的对象中的整数作为鉴别器。

代码如下:

Map<Integer, List<YourObject>> cache = new HashMap<Integer, List<YourObject>>();
for (YourObject yo : yourObjectListArrayWhatever) {
List<YourObject> list = cache.get(yo.getIntegerValue());
if (list == null) {
list = new ArrayList<YourObject>();
cache.put(yo.getIntegerValue(), list);
}
list.add(yo);
}

关于java - 根据 Object 中的 int 值将 ArrayList<Object> 拆分为多个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15547444/

26 4 0