Random sorting" />

gogoWebsite

java collection TreeMap using natural sorting and custom sorting

Updated to 21 days ago
import ;
 import ;

 public class Demo3 {
     public static void main(String[] args)
     {
    	 ("Use natural sorting:");
    	 TreeMap<IdNumber2, String> treeMap=new TreeMap<IdNumber2, String>();
    	 (new IdNumber2(1000), "Wang Nima");
    	 (new IdNumber2(1001), "Wannima");
    	 (new IdNumber2(1002), "Blue Nima");
    	 (new IdNumber2(1003), "Vonnyma");
    	 (new IdNumber2(1004), "Qin Nima");
    	 ("treeMap="+treeMap);
    	 ("Use custom sorting: (sorted from small to large)");
    	 //Use nail sorting to indicate the comparator
    	 TreeMap<IdNumber2, String> treeMap2=
    			 new TreeMap<IdNumber2,String>(new MyComparatorBigToSmall());
    	 (new IdNumber2(1000), "Wang Nima");
    	 (new IdNumber2(1001), "Wannima");
    	 (new IdNumber2(1002), "Blue Nima");
    	 (new IdNumber2(1003), "Vonnyma");
    	 (new IdNumber2(1004), "Qin Nima");
    	 ("treeMap2="+treeMap2);
    	 ("Use custom sorting: (Sorting from large to small)");
    	 TreeMap<IdNumber2, String> treeMap3=
    			 new TreeMap<IdNumber2,String>(new MyComparatorSmallToBig());
    	 (new IdNumber2(1000), "Wang Nima");
    	 (new IdNumber2(1001), "Wannima");
    	 (new IdNumber2(1002), "Blue Nima");
    	 (new IdNumber2(1003), "Vonnyma");
    	 (new IdNumber2(1004), "Qin Nima");
    	 ("treeMap2="+treeMap3);
     }
 }
   //Custom Comparator: Implement the comparator interface
 class MyComparatorBigToSmall implements Comparator<IdNumber2> //Use generics
 {
 
	 @Override
	 public int compare(IdNumber2 o1, IdNumber2 o2) {
		 // TODO Auto-generated method stub
		 return ()-();//Sorting from small to large
	 }
 }
 class MyComparatorSmallToBig implements Comparator<IdNumber2>
 {
	 @Override
	 public int compare(IdNumber2 o1, IdNumber2 o2) {
		 // TODO Auto-generated method stub
		 return ()-();//Sorting from small to large
	 }
 }
 //Z implements the Comparable interface as a key class
 class IdNumber2 implements Comparable<IdNumber2>
 {
	 //Member Attributes
	 private int IdNumber;
	 public int getIdNumber()
	 {
		 return IdNumber;
	 }
	 //Constructor
	 public IdNumber2() {
		 // TODO Auto-generated constructor stub
	 }
	 //Constructor
	 public IdNumber2(int IdNumber)
	 {
		 =IdNumber;
	 }
	 //Rewrite the toString() method
	 @Override
	 public String toString() {
		 // TODO Auto-generated method stub
		 return "["++"]";
	 }
	 //Rewrite the equals() method
	 @Override
	 public boolean equals(Object obj)
	 {
		 if(obj==this)//Compare yourself with yourself
			 return true;//That is the same one is equal
		 //The incoming reference is not empty, and the two types are the same
		 if(obj!=null&&()==())
		 {
			 IdNumber2 idNumber2=(IdNumber2) obj;//Type conversion
			 return ==;
			 //If the two numbers are the same, then they are considered equal
		 }
		 return false;
	 }
	 //Rewrite the hashCode() method
	 @Override
	 public int hashCode() {
		 // TODO Auto-generated method stub
		 return *100;
	 }
	 //Rewrite the compareTo() method to achieve natural sorting
	 @Override
	 public int compareTo(IdNumber2 o)
	 {
		 // TODO Auto-generated method stub
		 //return ;//Sorting from small to large:
		 return ;//Sorting from large to small
	 }
 }