gpt4 book ai didi

java - 获取所有重复项

转载 作者:行者123 更新时间:2023-12-02 01:12:31 25 4
gpt4 key购买 nike

例如,我有一个对象列表

    List<Document> myList = new ArrayList<Document>();
myList.add(new Document("TypeA"));
myList.add(new Document("TypeB"));
myList.add(new Document("TypeA"));
myList.add(new Document("TypeA"));
myList.add(new Document("TypeB"));

现在每个文档都有一个不同的类型属性,这就是我传递给构造函数的属性(这不是真实情况,只是试图简化它。

我需要做的是,向所有具有相同类型的 Document 对象添加一个新属性“counter”。因此,具有“TypeA”的三个 Document 对象需要具有递增的计数器值 (1,2,3)。如果只有一个具有特定类型的文档,那么它不应该有计数器值。

所以我想我基本上需要以某种方式过滤(分组)它们,然后迭代它们。但我怎样才能有效地做到这一点呢?

我有 JavaScript 背景,这对我来说很容易,但我发现 Java 似乎很复杂。

最佳答案

您可以使用存储计数的数据结构,例如 Bag

Bag is a collection that allows storing multiple items along with their repetition count:

    Bag<Integer> bag = new HashBag<>(
Arrays.asList(1, 2, 3, 3, 3, 1, 4));
assertThat(2, equalTo(bag.getCount(1)));

关于java - 获取所有重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59156830/

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