您的位置:首页 > 编程语言 > Java开发

java自带的排序方法sort

2011-11-13 12:36 357 查看
/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package com.city.test;

import java.util.Arrays;

import java.util.Comparator;

/**

*

* @author LiuB

*/

public class sortTesty {

//对整数集合进行排序

public void sortIntArray() {

int[] array = new int[] { 8, 5, 9, 0, 6, 3, 4, 7, 2, 1 };

System.out.println("整数排序前");

for (int i = 0; i < array.length; i++) {

System.out.print(array[i] + " ");

}

System.out.println();

Arrays.sort(array);

System.out.println("整数排序后");

for (int i = 0; i < array.length; i++) {

System.out.print(array[i] + " ");

}

System.out.println();

}

//对字符串集合进行排序

public void sortStringArray() {

String[] array = new String[] { "a", "c", "e", "d", "b" };

System.out.println("字符串排序前");

for (int i = 0; i < array.length; i++) {

System.out.print(array[i] + " ");

}

System.out.println();

System.out.println("字符串排序后");

Arrays.sort(array);

for (int i = 0; i < array.length; i++) {

System.out.print(array[i] + " ");

}

System.out.println();

}

//对对象集合进行排序

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("对象排序前");

for (int i = 0; i < dogs.length; i++) {

Dog dog = dogs[i];

System.out.print(dog.getName() + ":" + dog.getWeight()+ " ");

}

System.out.println();

Arrays.sort(dogs, new ByWeightComparator());

System.out.println("对象排序后");

for (int i = 0; i < dogs.length; i++) {

Dog dog = dogs[i];

System.out.print(dog.getName() + ":" + dog.getWeight()+ " ");

}

System.out.println();

}

public static void main(String[] args) {

sortTesty t = new sortTesty();

t.sortIntArray();

t.sortStringArray();

t.sortObjectArray();

}

}

//测试对象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;

}

}

//比较器,以Dog的重量作为比较的基准

class ByWeightComparator implements Comparator {

public int compare(Dog o1, Dog o2) {

int diff = o1.getWeight() - o2.getWeight();

if (diff > 0)

return 1;

if (diff < 0)

return -1;

else

return 0;

}

public int compare(Object o1, Object o2) {

throw new UnsupportedOperationException("Not supported yet.");

}

}

sort还有更多的方法简单的实现几个供参考

注:::::::::

意:::::::::

一个最简单的实现删除重复元素,然后排序的方法。。。可由此诞生。。。希望看到的可以自己实现一下。。留下代码大家交流

例如对 5,4,7,3,4,1,3,6,2,4,删除重复 元素然后从小到大排序。。看到了的可以试下
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: