public class list_sort {
static class item{
int id;
String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public static void main(String[] args) {
ArrayList<list_sort.item> items = new ArrayList<list_sort.item>();
ArrayList<Integer> indexs = new ArrayList<Integer>();
for (int i = 0; i < 10; i++) {
indexs.add(i);//添加0-9 10个数字
}
Random rd = new Random();
for (int i = 0; i < 10; i++) {//随机取其中一个添加,然后从源数据中删除,保证下次随机不会取到该数据
int x = rd.nextInt(indexs.size());
int y = indexs.get(x);
list_sort.item ix = new list_sort.item();
ix.setId(y + 1);
ix.setName("第" + (y + 1) + "个元素");
items.add(ix);
indexs.remove(x);
}
for (int i = 0; i < items.size(); i++) {//打印排序前的数据
System.out.println(items.get(i).getName() + " / " + items.get(i).getId());
}
Collections.sort(items, new Comparator<item>() {
//排序 升序,特殊处理将7排在第一位
@Override
public int compare(item o1, item o2) {
// TODO Auto-generated method stub
if (o1.getId() == 7) {
return -1;
}else if (o2.getId() == 7) {
return 1;
}else {
if (o1.getId() > o2.getId()) {
return 1;
}else {
return -1;
}
}
}
});
for (int i = 0; i < items.size(); i++) {//打印排序之后的顺序
System.err.println(items.get(i).getName() + " / " + items.get(i).getId());
}
}
}
static class item{
int id;
String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public static void main(String[] args) {
ArrayList<list_sort.item> items = new ArrayList<list_sort.item>();
ArrayList<Integer> indexs = new ArrayList<Integer>();
for (int i = 0; i < 10; i++) {
indexs.add(i);//添加0-9 10个数字
}
Random rd = new Random();
for (int i = 0; i < 10; i++) {//随机取其中一个添加,然后从源数据中删除,保证下次随机不会取到该数据
int x = rd.nextInt(indexs.size());
int y = indexs.get(x);
list_sort.item ix = new list_sort.item();
ix.setId(y + 1);
ix.setName("第" + (y + 1) + "个元素");
items.add(ix);
indexs.remove(x);
}
for (int i = 0; i < items.size(); i++) {//打印排序前的数据
System.out.println(items.get(i).getName() + " / " + items.get(i).getId());
}
Collections.sort(items, new Comparator<item>() {
//排序 升序,特殊处理将7排在第一位
@Override
public int compare(item o1, item o2) {
// TODO Auto-generated method stub
if (o1.getId() == 7) {
return -1;
}else if (o2.getId() == 7) {
return 1;
}else {
if (o1.getId() > o2.getId()) {
return 1;
}else {
return -1;
}
}
}
});
for (int i = 0; i < items.size(); i++) {//打印排序之后的顺序
System.err.println(items.get(i).getName() + " / " + items.get(i).getId());
}
}
}