【问题标题】:How to group array elements and get many occurring elements? [duplicate]如何对数组元素进行分组并获得许多出现的元素? [复制]
【发布时间】:2020-06-24 13:32:36
【问题描述】:

如何获取数组中多次出现的元素?

ArrayList<String> arrBarCode = new ArrayList<String>();
arrBarCode.add(BarCode);

【问题讨论】:

  • 我不知道你在问什么。您的意思是如何获取列表中某个条形码的频率,例如类似Map&lt;String, Integer&gt;?如果是这样,到目前为止您尝试了什么?
  • 你想让单个元素独一无二吗?
  • 是的,没错。我想获取列表中特定条形码的频率。

标签: java arrays android-studio


【解决方案1】:

使用Map&lt;String, Integer&gt; 来记住在List 上迭代时出现的次数:

ArrayList<String> arrBarCode = new ArrayList<String>();
arrBarCode.add("a");
arrBarCode.add("a");
arrBarCode.add("a");
arrBarCode.add("c");
Map<String, Integer> a = new HashMap<>();
arrBarCode.forEach(s -> a.put(s, a.computeIfAbsent(s, foo -> 0)+1));
System.out.println(a);

打印

{a=3, c=1}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-02
    • 2018-08-26
    • 1970-01-01
    • 1970-01-01
    • 2011-06-27
    • 1970-01-01
    相关资源
    最近更新 更多