黑马程序员技术交流社区

标题: Java语言中能否出现多个返回值 [打印本页]

作者: 月黑风高    时间: 2013-8-30 01:28
标题: Java语言中能否出现多个返回值
编写Java类方法调用的时候,有时方法参数传入一个值,需要的结果却是两个值。
硬生生的需要返回多个返回值,有没有解决的办法(返回值有几个就写几个方法返回就免了)

作者: ★忙碌★    时间: 2013-8-30 07:39
定义一个包含所有需要返回数据的类,如:public class MyHolder {
    public int var1, var2, var3 ...
}
然后将它的一个实例作为参数传递给方法(或者干脆返回一个这样的对象),在方法中对这个实例里的数据进行赋值,返回后自然就获得了多个数据。这样算不算实现你所要的功能了呢?
作者: 黑马-文鸿利    时间: 2013-8-30 07:42
一个方法只能return 一次。之后便会跳出这个方法。
如果你想返回多个值。可以放入一个容器 返回这个容器对象。
比如放入list里,再返回这个list;             // list.add(b)   list.add(c)   return list;

你也可以在一个方法里判断
  if(xxxx){return  xxx}
    else  if(xxxx){return xxxx}
    else {return xxxx}
但实际只执行一个return就跳出这个方法了。再次调用这个方法,如果条件不同就会返回不同值
作者: 饶正林    时间: 2013-8-30 07:45
我大胆假设一下,可以在函数里面,把多个“返回值”都存入一个数组里面,函数返回数组就行了。
作者: 月黑风高    时间: 2013-8-30 08:20
黑马-文鸿利 发表于 2013-8-30 07:42
一个方法只能return 一次。之后便会跳出这个方法。
如果你想返回多个值。可以放入一个容器 返回这个容器对 ...

亲,有木有直接返回多个值的情况?

作者: 杨增坤    时间: 2013-9-5 20:32
如果是直接返回的话,那你没有的,因为返回值只能是一个,什么的类型也可以,也可以说数组,你也可以存到数组中,返回一个数组!
作者: 杨增坤    时间: 2013-9-5 20:32
楼主 你的问题如果解决了!



请把您的问题的"未解决"更改为"已解决"!



谢谢合作!







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2