黑马程序员技术交流社区
标题:
为什么在对数组进行排序的时候,不能将排序好的数组返回
[打印本页]
作者:
Aimer_WJY
时间:
2014-3-4 17:01
标题:
为什么在对数组进行排序的时候,不能将排序好的数组返回
毕老师讲解没有听明白~求指点 谢谢
作者:
漠然~回首℃
时间:
2014-3-4 23:36
你贴出具体代码或者什么的看看啊?是不是排序好了不能打印啊!打印数组的话可以用System.out.println(Arrays.toString(数组名));
作者:
zhouliang
时间:
2014-3-5 06:35
下面是我自己以前学习的时候做的练习,拿来给你看看,跟你的程序对比一下,看是不是思想、程序还是编程方法不对,希望对你可以有帮助
class Shuzulianxi//类名.
{
/*
1、下面是对数组进行选择排序的(功能块)程序。
*/
public static void Selectsort(int [] arr)//这个功能块是用于数组的选择比较换位的。
{
for(int x=0;x<arr.length-1;x++)//外循环控制的是从数组的角标0开始往后依次的比较。
{
for(int y=x+1;y<arr.length;y++)//内循环控制的是从x之后的一位角标(x+1)开始往后依次的比较。
{
if(arr [x]>arr [y])//如果x角标对应的数组值大于y角标对应的数组值。
{
int temp=arr [x];//定义一个变量,并且将角标[x]对应的数组值赋给变量temp。
arr [x] =arr [y];//然后将角标[y]对应的数组值赋给角标[x]。
arr [y] =temp;//最后将变量temp对应的的数组值赋给角标[y]。
}
}
}
}
/*
2、下面是主函数部分.
*/
public static void main(String [] args)//主函数。
{
int [] arr={5,1,6,4,2,8,9};//定义一个数组。
//排序前。
PrintArray(arr);
//排序。
Selectsort(arr);//调用数组选择排序的功能块。
//排序后。
PrintArray(arr);//调用打印并输出已经排好序的数组功能块。
/*
3、下面是打印数组的(功能块)程序。
*/
public static void PrintArray(int [] arr)//这个功能块是用于打印并输出数组的。
{
System.out.print("[");//输出语句,输出结果是[。
for(int x=0;x<arr.length;x++)//for循环语句
{
if(x!=arr.length-1)//if选择判断语句(!=)这个符号的意思是不等于。
System.out.print(arr[x]+",");//输出语句,输出结果是一个(数组值和,)。
else//否则。
System.out.println(arr[x]+"]");//输出语句,输出结果是一个(数组值和])。
}
}
}
作者:
薛旻
时间:
2014-3-5 09:42
你是说定义一个方法,传入数组,然后将数组排序,然后再返回这个数组?如果是这样,完全可以啊,传入的数组,在这个数组上排序,返回这个数组就可以了。
作者:
云行水边
时间:
2014-3-5 09:58
打印出来是可以的,定义一个方法对数组排序(冒泡,快速,希尔排序),然后打印出排好序的数组,这个可以实现啊!
作者:
学习代码
时间:
2014-3-5 17:05
数组在排好序的时候也是一个数组,而返回值是在一个确定的值,如果想打印的话便利一下就可以了。个人理解
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2