为了账号安全,请及时绑定邮箱和手机立即绑定

我一直搞不懂这里面的循环是怎么回事

public static void main(String[] args) {
  int[] a=new int[]{20,10,50,40,30,70,60,80,90,100};
   for(int i=0;i<10;i++)
             for(int j=0;j<a.length-i-1;j++)
                 if(a[j]>a[j+1]){
                     int temp = a[j];
                     a[j] = a[j+1];
                     a[j+1] = temp;
                 }
         for(int i=0;i<a.length;i++)
           System.out.print(a[i]+" ");
 }

}

正在回答

3 回答

为什么不能直接用a[i],你可以发现在a[i+1]之后是可以取10的。还有,像这种多重循环结构,一般第一条循环语句是用来”定位“的

0 回复 有任何疑惑可以回复我~

这是冒泡吧,你画个图就明白了

0 回复 有任何疑惑可以回复我~

表示两个相邻的数比较

0 回复 有任何疑惑可以回复我~
#1

qq_且行且珍惜_39 提问者

为什么不能直接用a[i],而是循环了i后,用a[j]来比较呢
2018-11-01 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

我一直搞不懂这里面的循环是怎么回事

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信