已有101人关注
《Java从入门到精通》第3版 第6章6.5.1节例6.20
发表在Java图书答疑 2015-12-04
是否精华
版块置顶:
按书里《Java从入门到精通》第3版 例题得到的结果:>1>4>24>63>3>15 
和书上的结果>1>3>4>15>24>63
不符,这是怎么回事?
分享到:
精彩评论 4
菜鸟级精英
学分:0 LV1
TA的每日心情
开心
2020-03-23 21:05:48
2015-12-04
沙发
例题输出的结果就是>1>3>4>15>24>63啊,你是不是打错了
佚名
学分:70 LV3
TA的每日心情
开心
2021-07-05 14:21:40
2015-12-07
板凳

例题输出的结果就是>1>3>4>15>24>63啊,你是不是打错了
[/FIELDSET]

回复:
  package Hellojava;

import java.util.Arrays;

public class BubbleSort {

public static void main(String[] args) {
// TODO 自动生成的方法存根
int[] array={63,4,24,1,3,15};
BubbleSort sorter=new BubbleSort();
sorter.sort(array);
}
public void sort(int[] array){
for(int i=0;i<array.length;i++){
for(int j=0;j<array.length-j;j++){
if(array[j]>array[j+1]){
int temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
}
}
showArray(array);

}
public void showArray(int[] array) {
// TODO 自动生成的方法存根
for(int i:array){

System.out.print(">"+i);
}

System.out.println();

}


}

  [img src=http://h.picphotos.baidu.com/album/s%3D1100%3Bq%3D90/sign=4010f0ef71c6a7efbd26ac27cdca9420/f9198618367adab4edec4e738cd4b31c8701e4c6.jpg/img]
佚名
学分:70 LV3
TA的每日心情
开心
2021-07-05 14:21:40
2015-12-07
地板
[FIELDSET][LEGEND]引自:1楼[/LEGEND]
例题输出的结果就是>1>3>4>15>24>63啊,你是不是打错了
[/FIELDSET]

回复:
public class SelectSort {

public static void main(String[] args) {
// TODO 自动生成的方法存根
int[] array={63,4,24,1,3,15};
SelectSort sorter=new SelectSort();
sorter.sort(array);
}
public void sort(int[] array) {
// TODO 自动生成的方法存根
int index;
for(int i=1;i<array.length;i++){
index=0;
for(int j=1;j<array.length-i;j++){
if(array[i]>array[index]){
index=j;
}
}
int temp=array[array.length-i];
array[array.length-i]=array[index];
array[index]=temp;
Arrays.sort(array);
/*
 * 要加这句Arrays.sort(array);才会按从小到大排列,为什么我写的程序都这是,和书上的不同。想不通
 * */
}
showArray(array);
}
public void showArray(int[] array) {
// TODO 自动生成的方法存根
for(int i:array){
System.out.print(">"+i);
}
System.out.println();
}
}

  [img src=http://d.picphotos.baidu.com/album/s%3D1100%3Bq%3D90/sign=532967f436adcbef05347a079c9f15ac/4afbfbedab64034ffb7b9c36a8c379310a551d4f.jpg/img]
菜鸟级精英
学分:0 LV1
TA的每日心情
开心
2020-03-23 21:05:48
2015-12-09
4L
你的结果和书上不一样,是因为你代码写的和书上不一样。
注意循环变量i的起始值;
注意两个for循环中什么使用用的是i,什么时候用的是j;
注意交换两个元素值这项操作,是写在两个for循环之中的
首页上一页 1 下一页尾页 4 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照