无法弄清楚丢失的return语句错误

时间:2014-02-27 07:11:13

标签: java netbeans jdbc sqlexception

我实际上试图在我的代码中使用类似下面的内容,可以在下面提到的代码链接中找到:

Statement stmt;
ResultSet rs;
boolean done = false;
int i = 0;
while(!done) {
    try {
        stmt = connections[i].createStatement();
        rs = stmt.executeQuery("select * from aTable");
        rs.beforeFirst();
        while(rs.next()) {
            // Do whatever you need with the result set
        }
        done = true;
    } catch(SQLException e) {
        // Catch the exception and try with the next connection
        i++;
    }
}

链接:https://ideone.com/as1XI8

所以,我添加了int i&第83行和第8行的boolean done个变量84  添加while循环从第91行开始并在第380行设置done = true

最后,我在第389行增加变量i(i++)并关闭while循环  第463行带支撑。

执行此操作后,我在第80行(在int iterations = 0;之前开始大括号)中收到错误  Netbeans说"missing return statement".

我已经在#460行上有一个return语句,无法弄清楚为什么我会收到此错误。

有人可以在你的Netbeans / Eclipse中下载代码,让我知道出了什么问题吗?

谢谢!!

4 个答案:

答案 0 :(得分:1)

由于你的代码格式很不实用,在第460行的return语句之后,你有三个右括号 - 一个用于类,一个用于方法,一个用于while循环,我假设 - 确保,有每次在方法结束时返回一个return语句,在你的情况下,只需将return语句移动到方法的末尾。

此外,请了解如何格式化代码,通过正确的格式和缩进显然可以避免此错误。

答案 1 :(得分:0)

你需要return after the while loop完成!你是在while循环中返回的!

在其中一个大括号之后只需take your return statement并看到魔法

注意请避免放下整个代码(escp。这种凌乱的代码),通过它会变得很痛苦!花一些时间进行格式化并制作human readable

任何人都可以编写机器可以读取的代码,编写人类可以阅读的代码非常重要!

答案 2 :(得分:0)

您的退货声明处于错误的位置。它在while循环中。 在第462行写下你的退货声明

答案 3 :(得分:0)

当完成为true且while循环甚至不启动时,你需要return语句。只需添加一个带有null或new ResultSet的返回值。