黑马程序员技术交流社区
标题: 关于数组定义类型和void不能打印的一些问题? [打印本页]
作者: 陈虹旭 时间: 2012-7-26 17:47
标题: 关于数组定义类型和void不能打印的一些问题?
本帖最后由 陈虹旭 于 2012-7-26 19:45 编辑
- class ArrayTest2
- {
- public static void main(String[] args)
- {
- int[] arr = new int[]{5,1,6,4,2,8,9};
- printArray(arr); <FONT color=red>//毕老师说void类型的语句是不可以用于打印的,我自己也试过了确实不行,但是谁能告诉我为什么不行?
- </FONT>selectSort(arr);
- printArray(arr);
- }
- public static void selectSort(int[] arr)
- {
- for (int x=0; x<arr.length-1; x++)
- {
- for (int y=x+1; y<arr.length; y++)
- {
- if(arr[x]>arr[y])
- {
- int temp = arr[x]; <FONT color=red>//这里,为什么可以用int类型的变量来接收数组里的元素?如果我想用一个变量来接收整个数组的话,该定义一个什么类型的变量呢?
- </FONT>arr[x] = arr[y];
- arr[y] = temp;
- }
- }
- }
- }
- public static void printArray(int[] arr)
- {
- System.out.print("[");
- for (int x=0; x<arr.length; x++)
- {
- if(x!=arr.length-1)
- System.out.print(arr[x]+",");
- else
- System.out.println(arr[x]+"]");
- }
- }
复制代码void类型的语句为什么不可以直接用来打印?
为什么可以用int类型的变量来接收数组里的元素?如果我想用一个变量来接收整个数组的话,该定义一个什么类型的变量呢?
作者: 陈虹旭 时间: 2012-7-26 19:18
等了半天了,为什么还是没有人来回答这个问题?
作者: 王渠 时间: 2012-7-26 19:28
我来给你解答为什么void类型的东西不能直接拿来输出吧,当你用了一个方法后。如果返回值是void
其实有一句隐式的语句哦
是return;
相当于返回了一个神马都木有。
什么都没有自然也不能拿来输出了吧。
作者: 王楠 时间: 2012-7-26 19:36
void是空的意思,就是没有返回值,所以空的是打印不出的。
int是因为你定义的数组是int类型的,你可以定义变量去接数组里面的任意一个元素,可以通过for循环遍历每个元素。
定义的是什么类型的数组。就要用什么类型的变量去接里面的元素
作者: 陈虹旭 时间: 2012-7-26 19:40
陶锋 发表于 2012-7-26 19:24
你是想问为什么不能直接打印void类型的方法吧?void类型的方法没有返回值,那打印什么呢?
因为你的数组里 ...
理解 学习了!
作者: 陈虹旭 时间: 2012-7-26 19:41
王渠 发表于 2012-7-26 19:28
我来给你解答为什么void类型的东西不能直接拿来输出吧,当你用了一个方法后。如果返回值是void
其实有一句 ...
哦 对哈 我怎么就没想到呢 !
作者: 陈虹旭 时间: 2012-7-26 19:43
王楠 发表于 2012-7-26 19:36
void是空的意思,就是没有返回值,所以空的是打印不出的。
int是因为你定义的数组是int类型的,你可以定义 ...
嗯 看来我还是理解的不够深刻啊
作者: 陈虹旭 时间: 2012-7-26 19:43
谢谢各位大虾的帮助了 可以关闭了!
作者: 王渠 时间: 2012-7-26 19:49
陈虹旭 发表于 2012-7-26 19:41
哦 对哈 我怎么就没想到呢 !
{:3_57:}一起勉励吧!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |