return只能返回一个值,如果我有两个值都需要返回,除了定义数组,还有那些解决方法,大牛勿喷,请详细解答,谢谢!
例如:
public class CeShi
{
    public int test(int a,int b)
    {     
         return
    }
 }
还有一个接口,红色字体标注的其实是实现接口的方法

解决方案 »

  1.   

    最开始设计的初衷就是一个方法体只能有一个返回类型,并且执行return之后将会跳出方法体
    所以这是不可能的
      

  2.   

    我又想到个办法,
    根据勾股定理:a2+b2=c2返回两个值得平方和,在外面再求出a,b
    如何。哈哈,蛋疼的可以试试
      

  3.   

    Integer a=new Integer(0);
    Integer b=new Integer(1);public void test(Integer a,Integer b)
    {     
            a=2;
            b=3;
            return;
    }看看a,b是不是变了
      

  4.   

    核心还是返回了一个值,返回多个值是不太可能的,可以在返回之前将多个值包装,在外边解析,包装的方式就多了,数组、集合、map、string都是可以的
      

  5.   

    关于return,你定义的是什么就返回什么。你要返回两个值,要么用数组,那么你定义方法的时候也就只能 public int[] test(int a,int b)
        {     
             return
        }
    这么来定义。。
    用对象来定义,把两个值封装到一个对象中,也还是只能public Object test(int a,int b)
        {     
             return
        这么来定义。。你接收这个对象后,还是要解封的。。
    java 语法规定了只能返回一个值或一个对象,貌似别的语言也不能这么返回多个值吧。已经定在那里的,没啥原因好讲。。
      

  6.   

    数组才是走弯路的,面向对象,对象,对象,对象,当然最好的是返回对象,返回数组谁能知道每个元素具体代表什么,返回对象,最简单的可以用get方法获得所有需要的值。int[] r = findPosition(){};
    int r1 = r[0];
    int r2 = r[1];Position p = findPosition(){};
    int x = p.getX();
    int y = p.getY();
      

  7.   

    JAVA设计的时候就只能返回一个对象,所以楼主想要返回一组值的话,可以定义一个对象