private static void swap(Integer[] a,int x, int y) {
// TODO Auto-generated method stub
Integer temp=a[x];
a[x]=a[y];
a[y]=temp;
}
public static void big2Small(ArrayList arr)
{
Integer[] a=toArr(arr);
for(int x=0;x<a.length-1;x++)
for(int y=0;x<a.length-1-x;y++)
{
if(a[y+1]>a[y])
swap(a,x,y);
}
sop(a);
}
public static void sop(Integer[] a)
{
for(int x=0;x<a.length;x++)
System.out.println(a[x]);
}
}
复制代码
这个程序运行在我这报这个错误Exception in thread "main" java.lang.NullPointerException
at com.itheima.InfoDemo.small2Big(Test9.java:47)
at com.itheima.Test9.main(Test9.java:24)
哪里出问题了作者: 郭嘉 时间: 2013-1-24 02:19
import java.util.*;
public class CollectionsDemo {
public static void main(String[] args) {
ArrayList<Integer> arr=new ArrayList<Integer>();
arr.add(1);
arr.add(2);
arr.add(3);
arr.add(14);
arr.add(6);
arr.add(45);
arr.add(35);
arr.add(46);
InfoDemo.small2Big(arr);
InfoDemo.big2Small(arr);
}
}
class InfoDemo
{
public static Integer[] toArr(ArrayList arr)
{
Integer[] a=new Integer[arr.size()];
Iterator it=arr.iterator();
for(int x=0;x<arr.size();x++) //这里应该是arr.size()
{
a[x]=(Integer) it.next();
}
return a;
}
public static void small2Big(ArrayList arr)
{
Integer[] a=toArr(arr);
for(int x=0;x<a.length-1;x++)
for(int y=x+1;y<a.length;y++) //改成y<a.length
{
if(a[x]>a[y])
swap(a,x,y);
}
sop(a);
}
private static void swap(Integer[] a,int x, int y) {