日期:2014-05-20  浏览次数:20699 次

冒泡法
Java code
public class bubblesort46{
    public static void main(String args[]){
        int intarray[]={30,1,-9,70,25};
        int i,j;
        int l=intarray.length;             //所有一维数组有length属性
        for(i=0;i<l-1;i++)
            for(j=i+1;j<l;j++){             
                if(intarray[i]>intarray[j]){
                    int t=intarray[i];
                    intarray[i]=intarray[j];
                    intarray[j]=t;
                }
        }
        for(i=0;i<l;i++){
            System.out.println(intarray[i]+" ");
        }
    }
}


 1、int t=intarray[i]; 这个地方看不惯,应该在最开始就定义。。
 2、System.out.println(intarray[i]+" ");这是什么意思??要输出数组intarray的各项,直接写System.out.println(+intarray[i])这不行吗。。干嘛还要加个+" "
大家看看我理解的对不对啊。??谢谢。

------解决方案--------------------
1、t在int t=intarray[i]; 定义也可以,放到开头也可以的
2、写成System.out.println(intarray[i]+" ");完全没有必要,要写就写成System.out.print(intarray[i]+" ");
因为println本来都带换行。也可以写成System.out.println(intarray[i]);而不是多写个+,楼主你要写个加号根本没有作用,没有起到连接的作用。
------解决方案--------------------
lz正解。。。
------解决方案--------------------
我晕,那+" "是希望打印出的每个数之间带个空格吧...
------解决方案--------------------
因为println 加了 ln换行 所以有没有 +" "显示效果是一样的 可以不要 +" " 你是对的~~
------解决方案--------------------
可能意图是要用print()方法的,输出数组的一个元素后加一个空格便于区分啊,要不输出的每个元素不就连在一起了嘛 但是用println()方法由于输出后自动换行所以加空格就没必要了
------解决方案--------------------
LZ理解的很对,
不过2中输出数组中的各项的话,一般人都会选择用不换行的print,然后在数字之间加上" "或者\t