List<CiFormat> returns = new ArrayList<CiFormat>();
CiFormat cf_1 = new CiFormat(66,"可恶");
returns.add(cf_1);
CiFormat cf_2 = new CiFormat(99,"饿恶");
returns.add(cf_2);
CiFormat cf_3 = new CiFormat(123,"看恶");
returns.add(cf_3);
CiFormat cf_4 = new CiFormat(11,"看看人");
returns.add(cf_4);
Collections.sort(returns, new SortByFrq());
for (int i = 0;i< returns.size();i++) {
Log.d(tag, returns.get(i).getFrq()+"__"+returns.get(i).getCi());
}
结果:
123__看恶
99__饿恶
66__可恶
11_看看人
其中用的的内和方法
ZiCiFormat.java
class CiFormat{// (frq,ci_content)
private int frq;
public int getFrq() {
return frq;
}
public void setFrq(int frq) {
this.frq = frq;
}
private String ci;
public String getCi() {
return ci;
}
public void setCi(String ci) {
this.ci = ci;
}
public CiFormat(int frq,String ci){
this.frq = frq;
this.ci = ci;
}
}
class SortByFrq implements Comparator {
public int compare(Object o1, Object o2) {
CiFormat s1 = (CiFormat) o1;
CiFormat s2 = (CiFormat) o2;
if (s1.getFrq() < s2.getFrq())
return 1;
else if (s1.getFrq() == s2.getFrq()) {
return 0;
}
return -1;
}
}