【发布时间】:2015-12-31 02:59:07
【问题描述】:
我试图找出一个字符串在ArrayList 中出现了多少次。我设法通过使用Collections.frequency(list,object); 找到了
public class Main {
public static void main(String[] args) {
ArrayList<Main> d = new ArrayList<Main>();
Main m = new Main();
m.setA("a");
d.add(m);
Main m11 = new Main();
m11.setA("a");
d.add(m11);
Main m111 = new Main();
m111.setA("a");
d.add(m111);
int c = Collections.frequency(d, m11);
System.out.println(c);
}
private String a,b,c;
public String getA() {
return a;
}
public void setA(String a) {
this.a = a;
}
public String getB() {
return b;
}
public void setB(String b) {
this.b = b;
}
public String getC() {
return c;
}
public void setC(String c) {
this.c = c;
}
@Override
public boolean equals(Object o) {
return a.equals(((Main)o).a);
}
}
在上面的代码中,我设法找到了a。但是我怎样才能找到其他东西,比如如果我想找到 b 和 calso 的出现?有什么办法可以做到吗?可以有多个equals函数吗?
【问题讨论】:
-
您可以创建一个
HashMap<String, Integer>,并统计每个String的出现次数。 -
哈希图不可能
-
user3029017 和 Atri - 两种逻辑的组合将为您提供您想要的确切结果。
标签: java android arraylist collections