大漠駝鈴

          置身浩瀚的沙漠,方向最為重要,希望此blog能向大漠駝鈴一樣,給我方向和指引。
          Java,Php,Shell,Python,服務(wù)器運(yùn)維,大數(shù)據(jù),SEO, 網(wǎng)站開發(fā)、運(yùn)維,云服務(wù)技術(shù)支持,IM服務(wù)供應(yīng)商, FreeSwitch搭建,技術(shù)支持等. 技術(shù)討論QQ群:428622099
          隨筆 - 238, 文章 - 3, 評(píng)論 - 117, 引用 - 0
          數(shù)據(jù)加載中……

          Arrays.sort用法



          package test;

          import java.util.Arrays;
          import java.util.Comparator;

          public class ArraySortDemo {
          /**
          * 整數(shù)型數(shù)組排序
          */
          public void sortIntArray() {
             
          int[] arrayToSort = new int[] { 4858980812345162 };
             System.out.println(
          "整數(shù)型數(shù)組排序,排序前:");
             
          for (int i = 0; i < arrayToSort.length; i++){
              System.out.print(arrayToSort[i]
          +",");
             }
             
          // 調(diào)用數(shù)組的靜態(tài)排序方法sort
            Arrays.sort(arrayToSort);
             System.out.println();
             System.out.println(
          "排序后:");
             
          for (int i = 0; i < arrayToSort.length; i++){
              System.out.print(arrayToSort[i]
          +",");
             }
          }

          /**
          * 字符型數(shù)組排序demo
          */
          public void sortStringArray() {
             String[] arrayToSort 
          = new String[] { "Oscar""Charlie""Ryan",
               
          "Adam""David","aff","Aff" };
             System.out.println();
             System.out.println(
          "字符型數(shù)組排序,排序前:");
             
          for (int i = 0; i < arrayToSort.length; i++){
              System.out.print(arrayToSort[i]
          +",");
             }
             System.out.println();
             System.out.println(
          "排序后:");
             
          // 調(diào)用數(shù)組的靜態(tài)排序方法sort
             Arrays.sort(arrayToSort);

             
          for (int i = 0; i < arrayToSort.length; i++){
              System.out.print(arrayToSort[i]
          +",");
             }
          }

          /**
          * 對(duì)象數(shù)組排序demo
          */
          public void sortObjectArray() {
             Dog o1 
          = new Dog("dog1"1);
             Dog o2 
          = new Dog("dog2"4);
             Dog o3 
          = new Dog("dog3"5);
             Dog o4 
          = new Dog("dog4"2);
             Dog o5 
          = new Dog("dog5"3);
             Dog[] dogs 
          = new Dog[] { o1, o2, o3, o4, o5 };
             System.out.println();
             System.out.println(
          "對(duì)象數(shù)組排序排序前:");
             
          for (int i = 0; i < dogs.length; i++) {
              Dog dog 
          = dogs[i];
              System.out.print(dog.getName()
          +"["+dog.getWeight()+"],");
             }
             Arrays.sort(dogs, 
          new ByWeightComparator());
             System.out.println();
             System.out.println(
          "排序后:");
             
          for (int i = 0; i < dogs.length; i++) {
              Dog dog 
          = dogs[i];
              System.out.print(dog.getName()
          +"["+dog.getWeight()+"],");
             }
          }

          public static void main(String[] args) {
             ArraySortDemo t 
          = new ArraySortDemo();
             t.sortIntArray();
             t.sortStringArray();
             t.sortObjectArray();
          }
          }

          /**
          * 定義了一個(gè)Dog類
          */
          class Dog {
          private String name;
          private int weight;

          public Dog(String name, int weight) {
             
          this.setName(name);
             
          this.weight = weight;
          }

          public int getWeight() {
             
          return weight;
          }

          public void setWeight(int weight) {
             
          this.weight = weight;
          }

          public void setName(String name) {
             
          this.name = name;
          }

          public String getName() {
             
          return name;
          }
          }

          /**
          * 因?yàn)橐獙?duì)對(duì)象進(jìn)行排序,所以要實(shí)現(xiàn)java.util.Comparator接口的compare(T o1, T o2)方法,在該方法中自定義排序算法。
          */
          class ByWeightComparator implements Comparator {
          public final int compare(Object pFirst, Object pSecond) {
             
          int aFirstWeight = ((Dog) pFirst).getWeight();
             
          int aSecondWeight = ((Dog) pSecond).getWeight();
             
          int diff = aFirstWeight - aSecondWeight;
             
          if (diff > 0)
              
          return 1;
             
          if (diff < 0)
              
          return -1;
             
          else
              
          return 0;
          }
          }

          運(yùn)行結(jié)果:

          整數(shù)型數(shù)組排序,排序前:
          48,5,89,80,81,23,45,16,2,
          排序后:
          2,5,16,23,45,48,80,81,89,
          字符型數(shù)組排序,排序前:
          Oscar,Charlie,Ryan,Adam,David,aff,Aff,
          排序后:
          Adam,Aff,Charlie,David,Oscar,Ryan,aff,
          對(duì)象數(shù)組排序排序前:
          dog1[
          1],dog2[4],dog3[5],dog4[2],dog5[3],
          排序后:
          dog1[
          1],dog4[2],dog5[3],dog2[4],dog3[5],
          地方
          List list = new ArrayList() ;
          list.add(
          "abcd") ;
          list.add(
          "abdc") ;
          list.add(
          "aadf") ;
          list.add(
          "aabf") ;
          /*將list轉(zhuǎn)為數(shù)組*/
          String[] strs 
          = new String[list.size()] ;
          list.toArray(strs) ;
          /*排序,只排2<=索引<4之間的數(shù)據(jù)*/
          Arrays.sort(strs,
          2,4) ;
          for(String str : strs){
          System.out.println(str) ;
          }

          posted on 2009-10-31 22:21 草原上的駱駝 閱讀(2735) 評(píng)論(0)  編輯  收藏 所屬分類: JAVA基礎(chǔ)知識(shí)

          主站蜘蛛池模板: 靖江市| 台湾省| 噶尔县| 张掖市| 临夏市| 县级市| 蒙阴县| 博乐市| 宁波市| 武宁县| 临夏市| 榆中县| 页游| 北京市| 承德县| 邯郸市| 虹口区| 安新县| 阿克苏市| 天水市| 城口县| 霞浦县| 镇沅| 夹江县| 静安区| 江川县| 霍林郭勒市| 正镶白旗| 叶城县| 渑池县| 门源| 梨树县| 金堂县| 哈巴河县| 沂南县| 富顺县| 昌宁县| 保山市| 曲周县| 河东区| 巩留县|