自己做静态网站的步骤,店面设计在线,工业园区网站建设,网站推广站点建设与策划一.Comparator的使用
1.Arrays.sort 给基本类型的数组进行排序的方法#xff0c;默认是实现升序#xff0c;也可以通过方法写匿名类自定义实现升降序排序。
代码#xff1a;
Arrays.sort(arr,new ComparatorInteger(){Overridepublic int compare(Integer o1, In…一.Comparator的使用
1.Arrays.sort 给基本类型的数组进行排序的方法默认是实现升序也可以通过方法写匿名类自定义实现升降序排序。
代码
Arrays.sort(arr,new ComparatorInteger(){Overridepublic int compare(Integer o1, Integer o2) {if(o1o2)return 1;else return -1;}});2.Collections.sort 给List类的可变长数组进行排序的方法默认是实现升序也可以通过方法覆写Comparator接口的compara自定义实现升降序排序。
代码 Collections.sort(st,new ComparatorInteger() {public int compare(Integer o1, Integer o2) {if(o1o2)return 1;else return -1;}
});
二、Comparable的使用 用于自定义类继承该接口该类的实例即可放入TreeSet中实现自定义排序。
代码
//main方法
import rpg.Margicion;
import java.util.HashSet;
import java.util.TreeSet;public class Main {public static void main(String[] args) {HashSetMargicion snew HashSet();Margicion rnew Margicion(b, 15, 20);Margicion dnew Margicion(a, 15, 20);TreeSetMargicion enew TreeSet();e.add(r);e.add(d);for (Margicion margicion : e) {System.out.println(margicion.toString());}}
}
//自定义类需要继承Comparable接口才能使用TreeSet
class Margicion extends Role implements ComparableMargicion {//类的相关初始化Overridepublic void showfight(){System.out.println(挥剑攻击);System.out.println(super.blood);System.out.println(blood);}Overridepublic String toString() {return Margicion [blood name ];}Overridepublic int hashCode() {final int prime 31;int result 1;result prime * result blood;return result;}Overridepublic boolean equals(Object obj) {if (this obj)return true;if (obj null)return false;if (getClass() ! obj.getClass())return false;Margicion other (Margicion) obj;if (blood ! other.blood)return false;return true;}public Margicion(String name ,int blood ,int alt){this.altalt;super.bloodblood;this.namename;}//覆写comparaTo方法是调用方法的对象和括号里的元素比较//大于返回1小于返回-1等于返回0具体的操作可以自己实验Overridepublic int compareTo(Margicion o) {if(name.compareTo(o.name)-1){return 1;}else {return -1;}}}