java中List對對象進行排序

public class Car
{
	private String name;
	private String color;
	private Integer price;
}

public Car(String name, String color, Integer price)
{    
	super();
	this.name = name;
        this.color = color;
	this.price = price;
}

實體類↑

測試 ↓

/**
	 * 
	 * @fun-name myTest01
	 * @return-type void
	 * @author Mr_zhou
	 * @date 2018年8月28日 下午6:00:06 TODO 集合中對象排序
	 */
	private static void myTest04()
	{
		List<Car> list = null;
		// 線程安全的list
		list = Collections.synchronizedList(new ArrayList<Car>());
		list.add(new Car("名字", "顏色1", 5));
		list.add(new Car("名字", "顏色2", 6));
		list.add(new Car("名字", "顏色3", 9));
		list.add(new Car("名字", "顏色4", 2));
		list.add(new Car("名字", "顏色5", 3));
		for (Car car : list)
		{
			System.out.println(car);
		}
		Collections.sort(list, new Comparator<Car>()
		{
			public int compare(Car arg0, Car arg1)
			{
				int hits0 = arg0.getPrice();
				int hits1 = arg1.getPrice();
				// 這裏的hits1 < hits0 改成 hits1 > hits0 就是倒序
				if (hits1 < hits0)
				{
					return 1;
				} else if (hits1 == hits0)
				{
					return 0;
				} else
				{
					return -1;
				}
			}
		});
		System.out.println("-----------------------排序後---------------------------");
		for (Car car : list)
		{
			System.out.println(car);
		}
	}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章