list集合排序

对一个普通 List<Integer> 类型的集合,可以直接使用 Collections.sort(list) 来排序。

Collections.sort() 默认 是升序,如果需要降序,可以倒着遍历list。

如果对 一个 javaBean 中的某一个属性进行排序 方法如下:

package demo;

public class personal {

	private  String name;
	private  int age;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public personal(String name, int age) {
		super();
		this.name = name;
		this.age = age;
	}
	public personal(){};
}
package demo;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
/**
 * 根据 javabean 中的 age属性 来排序
 * TODO
 */
public class test4 {

	public static void main(String[] args){
		personal p = new personal("张三",23);
		personal p1 = new personal("李四",35);
		personal p2  = new personal("王五",15);
		personal p3 = new personal("赵六",12);
		
		List<personal> list = new ArrayList();
		list.add(p);
		list.add(p1);
		list.add(p2);
		list.add(p3);
		
		Collections.sort(list, new Comparator<personal>(){

            /*
             * int compare(Personal o1, Personal o2) 返回一个基本类型的整型,
             * 返回负数表示:o1 大于o2,
             * 返回0 表示:o1和o2相等,
             * 返回正数表示:o1小于o2
             */

			@Override
			public int compare(personal o1, personal o2) {
				if(o1.getAge()<o2.getAge()){
					return 1;
				}
				if(o1.getAge()==o2.getAge()){
					return 0;
				}
				return -1;
			}
			
		});
		
		for(personal pe:list){
			System.out.println(pe.getAge());
		}
		
	}
}

https://www.cnblogs.com/wangyayun/p/7852075.html

猜你喜欢

转载自blog.csdn.net/wlj_wangjun/article/details/84558664