一个关于Comparator的操纵例子[Java编程]
本文“一个关于Comparator的操纵例子[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
这两天项目需求用到一个排序,辨别对应4个项目,所以写了一个Comparator类.
代码以下:
import java.util.Comparator;
/**
* www.webkkk.net
* @author webkkk
*
*/
public class TestComparator implements Comparator {
public int compare(Object arg0, Object arg1) {
String[] strF = ((String) arg0).split("_");
String[] strL = ((String) arg1).split("_");
int len = strF.length;
if (len == 1) {
return Integer.parseInt(strF[0]) - Integer.parseInt(strL[0]);
}
for (int i = 0; i < len; i++) {
if (!strF[i].equals(strL[i])) {
return Integer.parseInt(strF[i]) - Integer.parseInt(strL[i]);
} else {
String strNF = getSubValue(strF, i);
String strNL = getSubValue(strL, i);
return compare(strNF, strNL);
}
}
return 0;
}
public String getSubValue(String[] strObj, int nPast) {
String strReturn = "";
for (int i = 1 + nPast; i < strObj.length; i++) {
strReturn = strReturn + "_" + strObj[i];
}
return strReturn.substring(1);
}
}
以上是“一个关于Comparator的操纵例子[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |