62,614
社区成员
发帖
与我相关
我的任务
分享
mport java.util.*;
class Item implements Comparable<Item>{
private int i;
public Item(int i) {
super();
this.i = i;
}
public int getI() {
return i;
}
public void setI(int i) {
this.i = i;
}
@Override
public int compareTo(Item o) {
int c = i - o.i;
if (c == 1 || c == -1) {
return c;
}
return 0;
}
@Override
public String toString() {
return String.valueOf(i);
}
}
public class Sorter{
private HashMap<Item,Integer> originalList=new HashMap<Item,Integer>();
Sorter(List<Item> myList){
for(int i=0;i<myList.size();i++){
originalList.put(myList.get(i),i);
}
}
public void sort(List<Item> myList){
Collections.sort(myList,new comparator());
}
public class comparator implements Comparator<Item>{
public int compare(Item i1,Item i2){
return originalList.get(i1)-originalList.get(i2);
}
public boolean equals(Object o){
return false;
}
}
public static void main(String[] args){
Random rand=new Random();
List<Item> list = new ArrayList<Item>();
for (int i = 0; i < 10; i++) {
list.add(new Item(rand.nextInt(10)));
}
Sorter mySorter=new Sorter(list);
System.out.println("排序之前");
System.out.println(list);
Collections.shuffle(list);
for(int i=0;i<3;i++){
System.out.println(list.remove(i)+"被删除了");
}
mySorter.sort(list);
System.out.println("排序之后");
System.out.println(list);
}
}
package test;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class Sorter {
public static void main(String[] args) {
List<Item> list = new ArrayList<Item>();
for (int i = 0; i < 10; i++) {
list.add(new Item((int) (Math.random()*12)));
}
Collections.shuffle(list);
System.out.println("排序前:" + Arrays.toString(list.toArray()));
sort(list);
System.out.println("排序后:" + Arrays.toString(list.toArray()));
}
private static void sort(List<Item> list) {
// TODO Auto-generated method stub
}
}
package test;
public class Item {
private int i;
public Item(int i) {
super();
this.i = i;
}
public int compareTo(Item o) {
int c = i - o.i;
if (c == 1 || c == -1) {
return c;
}
return 0;
}
@Override
public String toString() {
return String.valueOf(i);
}
}
class Item implements Comparable<Item>{
private int i;
public Item(int i) {
super();
this.i = i;
}
public int getI() {
return i;
}
public void setI(int i) {
this.i = i;
}
@Override
public int compareTo(Item o) {
int c = i - o.i;
if (c == 1 || c == -1) {
return c;
}
return 0;
}
@Override
public String toString() {
return String.valueOf(i);
}
}