A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 焦文斌 中级黑马   /  2013-4-9 18:54  /  1259 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 焦文斌 于 2013-4-9 19:04 编辑

  1. class ArrayTest2
  2. {
  3.         public static void main(String[] args)
  4.         {   
  5.                 int[] arr={4,5,2,3,6,8,1};
  6.                 bubbleSort(arr);
  7.                 printarr(arr);
  8.         }
  9.         public static void selectSort(int[] arr)
  10.         {
  11.                 for(int x=0; x<arr.length-1; x++)
  12.                 {
  13.                         for(int y=x+1; y<arr.length; y++)
  14.                         {
  15.                         if(arr[x]>arr[y])
  16.                                 {
  17.                                         int temp=arr[x];
  18.                                         arr[x]=arr[y];
  19.                                         arr[y]=temp;
  20.                                 }
  21.                         }
  22.                 }
  23.         }
  24.         public static void bubbleSort(int[] arr)
  25.         {
  26.                 for(int x=0; x<arr.length-1; x++);
  27.                 {
  28.                         for(int y=0; y<arr.length-x-1; y++)//报错,说找不到变量x
  29.                         {
  30.                                 if(arr[y]<arr[y+1])
  31.                                 {
  32.                                         int temp = arr[y];
  33.                                         arr[y] = arr[y+1];
  34.                                         arr[y+1] = temp;
  35.                                 }
  36.                         }
  37.                 }
  38.         }

  39.         public static void printarr(int[]arr)
  40.         {
  41.                  System.out.print("[");
  42.                 for(int x=0; x<arr.length; x++)
  43.                 {
  44.                         if(x!=arr.length-1)
  45.                                 System.out.print(arr[x]+",");
  46.                         else
  47.                                 System.out.println(arr[x]+"]");
  48.                  }
  49.         }
  50. }
复制代码

8 个回复

倒序浏览
本帖最后由 丁一 于 2013-4-9 19:04 编辑
  1. class ArrayTest2
  2. {
  3.         public static void main(String[] args)
  4.         {   
  5.                 int[] arr={4,5,2,3,6,8,1};
  6.                 bubbleSort(arr);
  7.                 printarr(arr);
  8.         }
  9.         public static void selectSort(int[] arr)
  10.         {
  11.                 for(int x=0; x<arr.length-1; x++)
  12.                 {
  13.                         for(int y=x+1; y<arr.length; y++)
  14.                         {
  15.                         if(arr[x]>arr[y])
  16.                                 {
  17.                                         int temp=arr[x];
  18.                                         arr[x]=arr[y];
  19.                                         arr[y]=temp;
  20.                                 }
  21.                         }
  22.                 }
  23.         }
  24.         public static void bubbleSort(int[] arr)
  25.         {
  26.                 for(int x=0; x<arr.length-1; x++);  //这个分号去了就对了,
  27.                 {
  28.                         for(int y=0; y<arr.length-x-1; y++)//报错,说找不到变量x
  29.                         {
  30.                                 if(arr[y]<arr[y+1])
  31.                                 {
  32.                                         int temp = arr[y];
  33.                                         arr[y] = arr[y+1];
  34.                                         arr[y+1] = temp;
  35.                                 }
  36.                         }
  37.                 }
  38.         }

  39.         public static void printarr(int[]arr)
  40.         {
  41.                  System.out.print("[");
  42.                 for(int x=0; x<arr.length; x++)
  43.                 {
  44.                         if(x!=arr.length-1)
  45.                                 System.out.print(arr[x]+",");
  46.                         else
  47.                                 System.out.println(arr[x]+"]");
  48.                  }
  49.         }
  50. }
复制代码
bubbleSort(int[] arr) 方法第一for 后的“;” 去掉就对了
回复 使用道具 举报
丁一 发表于 2013-4-9 19:01

:L我晕死了,我的天。谢谢你!
回复 使用道具 举报
for(int x=0; x<arr.length-1; x++);<-----------多了个分号!!!!!!!!!!!

回复 使用道具 举报
贾振凯 发表于 2013-4-9 19:04
for(int x=0; x

嗯嗯,谢谢你。:dizzy:
回复 使用道具 举报
二十六行的代码eclipse应该会提示错误哈?你没注意?
回复 使用道具 举报
for(int x=0; x<arr.length-1; x++);这句后面多了个分号,去掉就可以了。
for()条件句后面是不能有分号的,应该直接跟大括号{}
分号代表条语句,for(){}是一个整体,是不可以分开的。建议楼主一定要细心
回复 使用道具 举报
Asan 发表于 2013-4-9 19:15
二十六行的代码eclipse应该会提示错误哈?你没注意?

没看到提示
回复 使用道具 举报
严海燕 发表于 2013-4-9 19:20
for(int x=0; x

嗯  谢谢了,下次一定细心点,敲着敲着就出错了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马