java類中用Collections的sort方法對一個list進行排序,比較簡單
先建一個User對象
public class User {public String name;public Integer age;public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}}
這裡是一個Test
import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class Test {public static void main(String[] args){List<User> list = new ArrayList<User>();User user1 = new User();User user2 = new User();User user3 = new User();user1.setAge(16);user1.setName("王五");user2.setAge(12);user2.setName("李四");user3.setAge(16);user3.setName("張三");list.add(user1);list.add(user2);list.add(user3);//按照他們的年齡進行排序Collections.sort(list,new Comparator<User>() {@Overridepublic int compare(User obj1, User obj2) {int i = obj1.getAge().compareTo(obj2.getAge());if(i == 0){//如果年齡相同,則比較他們的名字,按照名字進行排序return obj1.getName().compareTo(obj2.getName());}return i;//這裡返回的只是一個int類型的資料}});for(User u : list){System.out.println(u.getName());}} }
運行結果:
李四張三王五