为什么我的方法无法返回任何东西?

时间:2016-03-26 21:30:02

标签: java

这是我的代码,当我编译并运行代码时,它返回任何我不理解的东西,因为我在If和Else中有返回语句。

public class Program8
{
    public static void main(String[] args)
    {
        getMonth("02/12/96");
    }

    public static int getMonth(String date)
    {
        if(date.substring(0,1).equals("0")) 
        {
            return Integer.parseInt(date.substring(1,2));
        }
        else 
        {
            return Integer.parseInt(date.substring(0,2));
        }
    }
}

3 个答案:

答案 0 :(得分:4)

您的方法getMonth确实返回了一个值,但它只是在main方法中被丢弃了。

可能你想打印它,如下:

public static void main(String[] args){
    System.out.println(getMonth("02/12/96"));
}

或者记录它,或者让它以某种方式让用户可见(例如GUI),或者将它分配给这样的变量:

public static void main(String[] args){
    int month = getMonth("02/12/96"); 
    // now `month` can be used for the subsequent operations/calculations
}

然后在进一步的计算中使用变量值。

答案 1 :(得分:2)

你没有输出任何东西。尝试:

public static void main(String[] args){
    System.out.println(getMonth("02/12/96"));
}

答案 2 :(得分:1)

您需要将返回的变量打印到控制台。

e.g。

public static void main(String[] args){
    System.out.println(getMonth("02/12/96"));
}

程序无法知道您是否要在控制台中打印月份。