import java.util.*;
public class S
{
public static void main(String[] args)
{
List a = new ArrayList();
a.add(9);
a.add(13);
a.add(5);
a.add(7);
a.add(24);
a.add(28);
a.add(20);
a.add(41);
for(int i = 0; i < a.size(); i++)
{
for(int j = 0; j < a.size() - i - 1 ; j++ )
{
int temp = 0;
if( (Integer)a.get(j) > (Integer)a.get(j+1))
{
temp = (Integer)a.get(j);
a.set((Integer)a.get(j+1) , (Integer)a.get(j));
a.set( temp , (Integer)a.get(j + 1));
}
}
}
for(int i = 0; i < a.size(); i ++ )
{
System.out.println(a.get(i));
}
}
}
public class S
{
public static void main(String[] args)
{
List a = new ArrayList();
a.add(9);
a.add(13);
a.add(5);
a.add(7);
a.add(24);
a.add(28);
a.add(20);
a.add(41);
for(int i = 0; i < a.size(); i++)
{
for(int j = 0; j < a.size() - i - 1 ; j++ )
{
int temp = 0;
if( (Integer)a.get(j) > (Integer)a.get(j+1))
{
temp = (Integer)a.get(j);
a.set((Integer)a.get(j+1) , (Integer)a.get(j));
a.set( temp , (Integer)a.get(j + 1));
}
}
}
for(int i = 0; i < a.size(); i ++ )
{
System.out.println(a.get(i));
}
}
}
import java.util.List;
public class TestOne {
public static void main(String[] args) throws Exception{
List a = new ArrayList();
a.add(9);
a.add(13);
a.add(5);
a.add(7);
a.add(24);
a.add(28);
a.add(20);
a.add(41);
for(int i = 0; i < a.size(); i++)
{
for(int j = 0; j < a.size() - i - 1 ; j++ )
{
int temp = 0;
if( (Integer)a.get(j) > (Integer)a.get(j+1))
{
temp = (Integer)a.get(j);
a.set((Integer)a.get(j+1) , (Integer)a.get(j));
a.set( temp , (Integer)a.get(j + 1));
}
}
}
for(int i = 0; i < a.size(); i ++ )
{
System.out.println(a.get(i));
}
}
}
抛出异常,或者用try catch 捕获异常
a.set((Integer)a.get(j+1) , (Integer)a.get(j));
a.set( temp , (Integer)a.get(j + 1));交换a的第j和j+1个元素的正确写法是:
temp = (Integer)a.get(j);
a.set(j , (Integer)a.get(j));
a.set(j+1,temp);
a.set(j , (Integer)a.get(j+1)); //此处修正
a.set(j+1,temp);
集合排序 直接用sort 如果里面是对象 可以实现Comparable接口去比较