枚举类型排序
来源:互联网 发布:收购淘宝买家资料 编辑:程序博客网 时间:2024/06/05 04:32
1.对于数组的排序方法如下:
String[] names = {"王林", "杨宝", "李镇", "刘迪", "刘波"};
Arrays.sort(names, com.ibm.icu.text.Collator.getInstance(com.ibm.icu.util.ULocale.SIMPLIFIED_CHINESE));//升序;
System.out.println(Arrays.toString(names));
2.对于汉字的排序:可以尝试使用ICU4J会得到更好的结果,特别是姓为某些生僻字的时候,
用com.ibm.icu.text.Collator替换java.text.Collator,用com.ibm.icu.util.ULocale替换java.util.Locale
3.对于枚举类型的enum1.compareTo(enum2)是按照枚举类型值在定义时的先后顺序比较的,越后面的越大,而不是按照值的字母先后顺序比较的。
public class Test {
public static void main(String[] args) {
List <Map<String,Object>>totallist = new ArrayList<Map<String,Object>>();
Map<String,Object> map = new HashMap<String,Object>();
map.put("PaymentType", PayType.S);
Map<String,Object> map1 = new HashMap<String,Object>();
map1.put("PaymentType", PayType.E);
Map<String,Object> map2 = new HashMap<String,Object>();
map2.put("PaymentType", PayType.Z);
totallist.add(map);
totallist.add(map1);
totallist.add(map2);
Collections.sort(totallist,new Comparator<Map<String,Object>>() {
public int compare(Map<String,Object> arg0, Map <String,Object>arg1) {
PayType t0 =(PayType) arg0.get("PaymentType");
PayType t1 = (PayType)arg1.get("PaymentType");
return t1.compareTo(t0);
}
});
System.out.println(totallist);
}
public enum PayType {
W,
S,
E,
Z;
}
}
打印结果如下:
[{PaymentType=Z}, {PaymentType=E}, {PaymentType=S}]
枚举类型排序
- 枚举类型排序
- OC5_容器类型的快速枚举_数组排序
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- 枚举类型
- Django入门(三、Models)
- Java类的加载顺序
- 1.java的八种基本数据类型以及其封装类的理解应用
- kafka常用操作命令
- 337. House Robber III
- 枚举类型排序
- [FAQ18188][Recovery][Common]Android M 版本如何升级logo等rawdata分区方法?
- CG原画设计视频教程之透视与结构的画法
- 性能测试用例设计
- Httpservlet cannot be resolved to a type的原因与解决方法
- Longest Subsequence CodeForces 632D 数学/筛法
- Unity中动态修改Terrain地形
- 邻接表的建立,以及深度优先搜索
- [noip2015]斗地主