写了一个 不过感觉有点饶圈.有谁能给写个效率高点的??我写的: import java.util.ArrayList; import java.util.Arrays; import java.util.Iterator;public class Test { public static void main(String[] args) { ArrayList<String> a = new ArrayList<String>(); ArrayList<String> b = new ArrayList<String>(); a.add(new String("b")); a.add(new String("c")); a.add(new String("a")); a.add(new String("d")); String[] aa = new String[a.size()]; a.toArray(aa); Arrays.sort(aa); for (String ee : aa) { b.add(ee); } Iterator it = b.iterator(); while (it.hasNext()) { System.out.println(it.next()); } }}
List list = new ArrayList(); Comparator comp = Collections.reverseOrder(); Collections.sort(list, comp);
import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.Iterator; public class Test {
public void printArrayList() { ArrayList list = new ArrayList(); list.add( "c" ); list.add( "b" ); list.add( "a" ); list.add( "f" ); list.add( "e" ); list.add( "d" );
Collections.sort( list, new MyComp() );
Iterator it = list.iterator(); while( it.hasNext() ) System.out.println( (String)it.next() ); } public static void main(String[] args) {
new Test().printArrayList();
}
private class MyComp implements Comparator { public int compare(Object o1, Object o2) { return o1.toString().compareTo( o2 ); } }}
public int compare(Object o1, Object o2) { return o1.toString().compareTo( o2 ); }着句是什么意思啊?
Collections.sort( list, new MyComp() ); 这个方法的参数是一个Collection对象和一个实现了Comparator接口的对象,Compare接口定义了 public int compare(Object o1, Object o2) 这个方法,实现Comparator接口的类必须实现这个方法(参见java接口的语法规则) 所以我写了一个内部类(外部类也可以,内部类只给这个类用),实现了compare这个方法
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;public class Test { public static void main(String[] args) { ArrayList<String> a = new ArrayList<String>();
ArrayList<String> b = new ArrayList<String>();
a.add(new String("b"));
a.add(new String("c"));
a.add(new String("a"));
a.add(new String("d")); String[] aa = new String[a.size()];
a.toArray(aa);
Arrays.sort(aa);
for (String ee : aa) {
b.add(ee);
}
Iterator it = b.iterator();
while (it.hasNext()) {
System.out.println(it.next());
} }}
Comparator comp = Collections.reverseOrder();
Collections.sort(list, comp);
import java.util.Collections;
import java.util.Comparator;
import java.util.Iterator;
public class Test {
public void printArrayList()
{
ArrayList list = new ArrayList();
list.add( "c" );
list.add( "b" );
list.add( "a" );
list.add( "f" );
list.add( "e" );
list.add( "d" );
Collections.sort( list, new MyComp() );
Iterator it = list.iterator();
while( it.hasNext() )
System.out.println( (String)it.next() );
} public static void main(String[] args)
{
new Test().printArrayList();
}
private class MyComp implements Comparator
{
public int compare(Object o1, Object o2)
{
return o1.toString().compareTo( o2 );
}
}}
{
return o1.toString().compareTo( o2 );
}着句是什么意思啊?
这个方法的参数是一个Collection对象和一个实现了Comparator接口的对象,Compare接口定义了 public int compare(Object o1, Object o2) 这个方法,实现Comparator接口的类必须实现这个方法(参见java接口的语法规则)
所以我写了一个内部类(外部类也可以,内部类只给这个类用),实现了compare这个方法