对查询结果进行排序

简介: 对查询结果进行排序

当我们取数据时, 有时候需要对某个字段或者多个字段进行排序,

那么该怎么实现呢?

首先从数据库取数据可以在sql里面直接 order by col

多个字段直接 order by col1 , col2

例如:

select * from user order by age

假如取出数据后又会对数据重新处理导致排序失效, 那么可以在代码里再一次进行排序

我们可以使用list.sort()

myList.sort(new Comparator<A>() {
       @Override
       public int compare(A o1, A o2) {
           return o1.getName().compareTo(o2.getName());
       }
   });

之前遇到一个小问题, 假如name 字段包含中文和英文, 需要实现英文按字母顺序, 中文也按首拼音的字母顺序 排列

上面的代码无法实现

需要用到处理中文的排序方式

Comparator comparator= Collator.getInstance(java.util.Locale.CHINA);
myList.sort(new Comparator<A>() {
       @Override
       public int compare(A o1, A o2) {
           return comparator.compare(o1.getName(),o2.getName());
       }
   });
目录
打赏
0
0
0
0
0
分享
相关文章
|
6月前
排序1
排序1
28 0
|
9月前
排序(详解)下
排序(详解)
90 0