首页 > 代码库 > sort utility
sort utility
Create an interface called Sortable in a package called sortPack. It should have one method compare which takes an Object as a parameter and returns an integer. In the same package create a class called Sort with a static method called sortAny which takes a Sortable array as a parameter. It sorts the array using the compare method in Sortable.
Create a class called NewPerson which implements Sortable and give the concrete implementation of the compare method.
In another class write a main to use the above sort utility.
1 package sortPack;2 3 interface Sortable {4 int compare(Object o);5 }
1 package sortPack; 2 3 public class NewPerson implements Sortable { 4 int ID; 5 6 public NewPerson(int ID) { 7 this.ID = ID; 8 } 9 10 public int getID() {11 return ID;12 }13 14 public int compare(Object o) {15 int res = 1;16 17 if (this.ID > ((NewPerson) o).ID)18 return 0;19 return res;20 }21 22 }
1 package sortPack; 2 3 import java.util.Arrays; 4 5 public class Sort { 6 7 static void sortAny (Sortable arr[]){ 8 Sortable temp; 9 for(int i=0;i<arr.length-1;i++){10 for(int j=i+1;j<arr.length;j++){11 if((arr[i]).compare(arr[j])==0){12 temp=arr[i];13 arr[i]=arr[j];14 arr[j]=temp;15 }16 }17 }18 19 }20 }
1 package sortPack; 2 3 public class TestSort { 4 5 public static void main(String[] args) { 6 7 NewPerson[] person = { new NewPerson(123), 8 new NewPerson(128), 9 new NewPerson(111), 10 new NewPerson(121), 11 new NewPerson(113),12 new NewPerson(101), 13 new NewPerson(116) };14 System.out.println("Before Sort:");15 for(NewPerson per:person){16 System.out.print(per.getID()+" ");17 }18 Sort.sortAny(person);19 20 System.out.println("\nAfter Sort:"); 21 for(NewPerson per:person){22 System.out.print(per.getID()+" ");23 }24 25 }26 27 }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。