黑马程序员技术交流社区
标题:
关于函数返回值调用
[打印本页]
作者:
乔攀
时间:
2012-11-27 22:23
标题:
关于函数返回值调用
本帖最后由 乔攀 于 2012-11-27 23:07 编辑
定义一个数组 例如:int[] arr = new int[] {45,23, 68, 54, 77 },完成以下功能
(1) 实现输出数组中元素为奇数的数据。
class Demo
{
public static void main(String [] args)
{
int[] arr = new int[] {45,23, 68, 54, 77 };
int[]c=cha(arr);
// System.out.println(c);
}
public static int [] cha(int [] arr)
{
for (int i=0;i<arr.length ;i++ )
{
if (arr
%2==1)
{
System.out.print(arr
+" ");
}
}
return arr;
}
}
为什么输出结果总是带着内存中的地址?
作者:
郝少普
时间:
2012-11-27 22:46
我跑了一下发现
System.out.println(c); 你打印了c,c 是你new 出来的地址, 所以出现的地址。。
我帮你改好了
public class Demo {
public static void main(String[] args) {
int[] arr = new int[] { 45, 23, 68, 54, 77 };
cha(arr);
//System.out.println(cha(arr) + " **");
}
public static int[] cha(int[] arr) {
for (int i = 0; i < arr.length; i++) {
if (arr[i] % 2 == 1) {
System.out.print(arr[i] + " ");
}
}
return arr;
}
}
复制代码
作者:
张海涛
时间:
2012-11-27 23:02
本帖最后由 张海涛 于 2012-11-27 23:05 编辑
如果你需要cha()这个函数返回的值你在主函数main里面
直接调用
就可以了,而你是把cha函数的返回值(是一个数组)赋值给数组类型的c,然后你打印了c
所以会将cha函数的值和c的类型一并返回给你!
class Demo
{
public static void main(String[] args)
{
int[] arr = new int[] {45,23, 68, 54, 77 };
//int[] c = cha(arr);
//System.out.println(c);
cha(arr);
}
public static int[] cha(int[] arr)
{
for (int i=0;i<arr.length ;i++ )
{
if (arr
%2==1)
{
System.out.print(arr
+" ");
}
}
return arr;
}
}
作者:
乔攀
时间:
2012-11-27 23:05
哦 明白了 谢谢两位!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2