package com.*.slt.model;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
* @className:Music.java
* @classDescription: 歌曲
* @author:qiuchen
* @createTime:2012-9-21
*/
public class Music implements Comparable<Music>{
/**
* 歌曲ID
*/
private int id;
/**
* 歌曲名称
*/
private String songName;
/**
* 歌曲排序
*/
private int orders;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getSongName() {
return songName;
}
public void setSongName(String songName) {
this.songName = songName;
}
public int getOrders() {
return orders;
}
public void setOrders(int orders) {
this.orders = orders;
}
/**
* Music对象通过orders排序
*/
public int compareTo(Music o) {
return this.orders - o.getOrders();
}
public Music() {
super();
}
public Music(int id, String songName, int orders) {
super();
this.id = id;
this.songName = songName;
this.orders = orders;
}
public static void main(String[] args) {
//初始化list
List<Music> musics = new ArrayList<Music>();
musics.add(new Music(1,"死了都要爱",1));
musics.add(new Music(2,"一路上有你",2));
musics.add(new Music(3,"真爱",4));
musics.add(new Music(4,"因为爱情",3));
musics.add(new Music(5,"我的心不会变",5));
//按add顺序输出
System.out.println("按add顺序输出");
System.out.println("id--orders--songname");
for(Music m : musics){
System.out.println(m.getId()+"--"+m.getOrders()+"--"+m.getSongName());
}
//按add顺序反转输出
Collections.reverse(musics);
System.out.println("按add顺序反转输出");
System.out.println("id--orders--songname");
for(Music m : musics){
System.out.println(m.getId()+"--"+m.getOrders()+"--"+m.getSongName());
}
//升序
Collections.sort(musics);
System.out.println("按orders升序");
System.out.println("id--orders--songname");
for(Music m : musics){
System.out.println(m.getId()+"--"+m.getOrders()+"--"+m.getSongName());
}
//降序
Collections.sort(musics,Collections.reverseOrder());
System.out.println("按orders降序");
System.out.println("id--orders--songname");
for(Music m : musics){
System.out.println(m.getId()+"--"+m.getOrders()+"--"+m.getSongName());
}
}
}
控制台输出结果:
按add顺序输出
id--orders--songname
1--1--死了都要爱
2--2--一路上有你
3--4--真爱
4--3--因为爱情
5--5--我的心不会变
按add顺序反转输出
id--orders--songname
5--5--我的心不会变
4--3--因为爱情
3--4--真爱
2--2--一路上有你
1--1--死了都要爱
按orders升序
id--orders--songname
1--1--死了都要爱
2--2--一路上有你
4--3--因为爱情
3--4--真爱
5--5--我的心不会变
按orders降序
id--orders--songname
5--5--我的心不会变
3--4--真爱
4--3--因为爱情
2--2--一路上有你
1--1--死了都要爱