java - 成对字符串数组?

标签 java

我有一个方法可以检查 ArrayList 中的重复值,我希望它返回那些包含重复值的 EzVarIntegers 的名称(包含名称和值以及目前不相关的其他内容)。

我正在考虑并排使用两个数组,它们的名称为 EzVarIntegers,并且同一索引上有重复值。因此具有相同值 X 的两个 EzVarIntegers 将位于 ArrayOne[k] 和 ArrayTwo[k] 中。

我对此很陌生,所以我想知道是否有更聪明的方法来处理这个问题?

public ArrayList<String> dupCheck(ArrayList<EzVarInteger> RoiNumbs) {
    ArrayList<String> Dups = new ArrayList<String>();

    for (int j=0;j<RoiNumbs.size();j++) {
        for (int k=j+1;k<RoiNumbs.size();k++) {
            if (k!=j && RoiNumbs.get(k).getValue() == RoiNumbs.get(j).getValue()) {
                //TODO see question
            }
        }
    }

    return Dups;
}

最佳答案

尝试使用 map (参见示例)

public static void main(String[] args)
{

List<String> strings = new ArrayList<>();

strings.add("a");
strings.add("b");
strings.add("a");
strings.add("c");

Map<String, Integer> counts = new HashMap<>();

for (String str : strings)
  {
    if (!(counts.containsKey(str)))
      {
        counts.put(str, 1);
      } 
  }

for (Map.Entry<String, Integer> entry : counts.entrySet())
  {
    System.out.println(entry.getKey() + " = " + entry.getValue());
  }

}

关于java - 成对字符串数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48932177/

相关文章:

java - http路径的处理方法不明确?

java - 两个 Web 应用程序之间的 session 共享 : tomcat

java - 是否可以覆盖 Glassfish v3 的默认日志记录?

java - 如何从另一个列表中替换对象列表中的元素

java - 扫描仪在使用 next() 或 nextFoo() 后跳过 nextLine()?

java - 将支持 bean 实例作为参数传递给另一个支持 bean 方法

java - Android - XPath 评估速度非常慢

Java - KeyListener 问题

java - 当组件被限定为 session 时,无法将 Spring Controller 限定为请求

java - 将 Swing UI 提升到一个新的水平?