Java,list按照元素属性排序
2018-01-19 11:03
447 查看
分别按照Integer的Id,String的Name排序package com.main;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class Main {
public static void main(String[] args) {
System.out.println("a".compareTo("b"));
List<Unit> list = new ArrayList<>();
list.add(new Unit(2, "zhangsan"));
list.add(new Unit(3, "lisi"));
list.add(new Unit(1, "wangwu"));
Main main = new Main();
main.sortListById(list);
main.sortListByName(list);
System.out.println("");
}
private void sortListById(List<Unit> list) {
Collections.sort(list, new Comparator<Unit>() {
@Override
public int compare(Unit o1, Unit o2) {
if (o1.getId() > o2.getId()) {
return 1;
} else if (o1.getId() < o2.getId()) {
return -1;
} else {
return 0;
}
}
});
}
/**
* 与下面的方法同义
*
* @param list
*/
// private void sortListByName(List<Unit> list) {
// Collections.sort(list, new Comparator<Unit>() {
// @Override
// public int compare(Unit o1, Unit o2) {
// if (o1.getName().compareTo(o2.getName()) > 1) {
// return 1;
// } else if (o1.getName().compareTo(o2.getName()) < -1) {
// return -1;
// } else {
// return 0;
// }
// }
// });
// }
private void sortListByName(List<Unit> list) {
Collections.sort(list, new Comparator<Unit>() {
@Override
public int compare(Unit o1, Unit o2) {
return o1.getName().compareTo(o2.getName());
}
});
}
}
![](https://img-blog.csdn.net/20180119111152555)
![](https://img-blog.csdn.net/20180119111206368)
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class Main {
public static void main(String[] args) {
System.out.println("a".compareTo("b"));
List<Unit> list = new ArrayList<>();
list.add(new Unit(2, "zhangsan"));
list.add(new Unit(3, "lisi"));
list.add(new Unit(1, "wangwu"));
Main main = new Main();
main.sortListById(list);
main.sortListByName(list);
System.out.println("");
}
private void sortListById(List<Unit> list) {
Collections.sort(list, new Comparator<Unit>() {
@Override
public int compare(Unit o1, Unit o2) {
if (o1.getId() > o2.getId()) {
return 1;
} else if (o1.getId() < o2.getId()) {
return -1;
} else {
return 0;
}
}
});
}
/**
* 与下面的方法同义
*
* @param list
*/
// private void sortListByName(List<Unit> list) {
// Collections.sort(list, new Comparator<Unit>() {
// @Override
// public int compare(Unit o1, Unit o2) {
// if (o1.getName().compareTo(o2.getName()) > 1) {
// return 1;
// } else if (o1.getName().compareTo(o2.getName()) < -1) {
// return -1;
// } else {
// return 0;
// }
// }
// });
// }
private void sortListByName(List<Unit> list) {
Collections.sort(list, new Comparator<Unit>() {
@Override
public int compare(Unit o1, Unit o2) {
return o1.getName().compareTo(o2.getName());
}
});
}
}
package com.main; /** * Title: Unit * Description: * * @date 2018/1/19 10:32 */ public class Unit { private Integer id; private String name; public Unit(Integer id, String name) { this.id = id; this.name = name; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } }
相关文章推荐
- java list按照元素对象的指定多个字段属性进行排序
- java list按照元素对象的指定多个字段属性进行排序
- java list按照元素对象的指定多个字段属性进行排序
- Java中的List按照元素的属性进行排序
- java list按照元素对象的指定多个字段属性进行排序
- java list按照元素对象的指定多个字段属性进行排序
- java中list按照某个属性排序方法
- java编程List按照多个属性进行排序
- 对list中的元素按照元素的属性进行排序
- java list按照 对象 指定多个字段属性进行排序
- java list对元素进行指定多个字段属性按多种排序方式进行排序
- java list按照 对象 指定多个字段属性进行排序
- Java中集合List按照集合内实体类元素的指定字段排序方法
- java list按照 对象 指定多个字段属性进行排序
- Java对List中的中文属性按照拼音排序
- Java中对List集合内的元素进行顺序、倒序、随机排序的示例代码
- Java对List集合中的元素进行排序
- C#中List实现按照对象属性排序
- (JAVA)【实例】按照日期对List进行排序
- 【LeetCode-面试算法经典-Java实现】【082-Remove Duplicates from Sorted List II(排序链表中删除重复元素II)】