在一个方法中返回多个整数

时间:2015-09-24 02:25:36

标签: java class methods

// set date of birth
    public void setDOB(int day, int month, int year)
    {
        this.day = day;
        this.month = month;
        this.year = year;
    }

    // get date of birth
    public int getDOB()
    {
        return day;
        return month;
        return year;
    }

当我尝试返回这三个值时,为什么会出现错误?我以为我能够通过不为每天,每月和每年编写每个set / get方法来节省一些空间。

另外,我似乎只得到return month;的错误,这意味着它是eclipse突出显示的唯一一个告诉我删除它的错误。

3 个答案:

答案 0 :(得分:3)

您不能同时使用return语句返回多个值。当第一个return语句执行时,剩下的两个语句变得无法访问。

可能的解决方案

1)返回一个数组

2)返回int的列表

3)或构造一个对象并将其返回。

当您编写getDOB()时应该是Date对象,而不是int。看来你需要在那里返回一个Date对象。

答案 1 :(得分:2)

你不能。第一个return语句将结束方法并将控制权返回给调用者。永远不会达到进一步的回报。您只能从任何方法返回单个值,并将返回类型指定为int。

答案 2 :(得分:1)

  

当我尝试返回这三个值时,为什么会出现错误?

返回类型int表示您的方法只会return int,一旦返回语句执行,您的其他代码在返回语句后变为 dead ,因为在{{ 1}}控件直接转到方法的调用者

你应该在你的情况下返回return number;,因为它与出生时的Date有关。

此外,您可以使用三种不同的Date方法(不建议使用)。

getter