这是我的头等舱:

public class Fraction
{
    int Numerator;
    int Denominator;

    /**
     * Constructor for objects of class Fraction
     */
    public Fraction()
    {
        // initialise instance variables
        Numerator=0;
        Denominator=0;
    }

    public Fraction(int StartNumerator , int StartDenominator)
    {
        StartNumerator = Numerator;
        StartDenominator = Denominator;
    }

    public String toString()
    {
        String FractionOne = Numerator + "/" + Denominator;
        String FractionTwo = Numerator + "/" + Denominator;

        return FractionOne;
        return FractionTwo;
    }
}


这是我的第二堂课:

public class TestFraction
{
    public static void main (String [] args)
    {

        Fraction FractionOne = new Fraction(1 , 4);
        Fraction FractionTwo = new Fraction(2 , 3);

        System.out.println(FractionOne);
        System.out.println(FractionTwo);
    }
}


编译时,出现以下错误:return FractionTwo;
作为无法到达的陈述

请帮助我了解我在做什么错。

最佳答案

return FractionOne;
return FractionTwo;


您不能一个接一个地包含两个return语句。第二个将永远无法执行,因为第一个将退出该方法。这就是第二条语句无法到达的原因。

如果您想要返回两个字符串,则应该将它们连接起来:

return FractionOne+FractionTwo;


要么

return FractionOne+","+FractionTwo;


要么

return FractionOne+"\n"+FractionTwo;


但是,由于它们都是相同的,所以我看不到返回两者的意义。

关于java - 无法返回“返回”的声明,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27133974/

10-12 12:46
查看更多