为什么我的java方法不起作用? (帮助新手)

时间:2017-03-02 19:55:49

标签: java methods double

请帮助我完成我的第一个java程序。我创建了一个方法“findCurrencyRate”,该方法应该返回字符串“texto”中包含的所选货币(在本例中为USD)的汇率。我只是不断收到编译错误:“此方法必须返回double类型的结果”。我的代码出了什么问题?帮助我理解......

这是我的代码:

FastBlur
{
    x: 0
    y: 0
    height: Screen.desktopAvailableHeight
    width: Screen.desktopAvailableWidth
    source: video
    radius: 100
}

2 个答案:

答案 0 :(得分:0)

如果方法的返回类型为double,则在所有情况下都需要返回double,即使循环或if块未执行也是如此。

一个简单的解决方案是在方法的末尾添加return 0.0;

答案 1 :(得分:0)

如果file.hasNextLine()false会怎样?或者linea.next().equals(Currency)false?该方法不会返回任何内容。正如错误消息所述,该方法必须返回一些内容。

所以你需要确保返回一些东西:

public static double findCurrencyRate(String Currency) {

    // ... your existing code ...

    while (file.hasNextLine()) {

        // ... your existing code ...

    }

    // return some default value here

}

如果处理整个文件而没有找到要返回的值,那么至少返回某些

注意:如果你真的不想返回任何,因为退出循环而没有找到匹配是某种错误条件,而不是返回您可以抛出异常的默认值。抛出异常是方法的有效退出,但是如果使用已检查的异常,则会改变方法签名。