2016-01-17 97 views
0

如何返回主方法并再次执行整个程序?我尝试了回报,但它只是结束执行。返回到java中的主要方法

这是代码:

File folder = new File("C:\my path"); 
    File[] listOfFiles = folder.listFiles(); 

     if (folder.isDirectory()){ 
      if(folder.list().length>0){ 
       System.out.println("Directory is not empty!"); 

      } 
      else { 
       System.out.println("Directory is empty!"); 
       return; //I need to return from the main method 
      } 
     } 
     else{ 
      System.out.println("Invalid directory!"); 
     } 

我要返回到主方法,如果目录为空。我使用了回报,但它并没有从开始返回:(任何想法如何返回到主要方法?谢谢:)

这是整个主要方法:(对不起,如果它太长) enter image description here

enter image description here

enter image description here

我的目标是检查是否有新的文件进入目录。然后它会列出该目录中的文件,并逐个将其删除。如果目录中没有文件,它将返回到开始。

评论校正:“//它将返回到开始”

的两个环:第二环路将所述第一循环的执行期间被执行。 (对不起,如果我没有缩进它)。第二个循环执行后,它将返回到第一个循环。 enter image description here

+1

你的问题现在无法解决。你能否包括上面的代码片段出现的方法?它是你的'main()'方法还是别的吗? –

+0

它是主要的方法。我也想知道是否要将它放在单独的课程或方法中。但如果是在另一种方法,我怎么能再次调用主要方法 – JustOnce

回答

1

这很难看,但我想你想退出循环使用return声明不是这样工作。如果你想退出一个循环,你必须使用break

这里的解释有点:Difference between Return and Break statements

而且因为它是一个基本的编程知识,我建议你去通过一些Java教程第一。例如:http://www.tutorialspoint.com/java/inde

+0

是的我想退出循环,但它应该返回到第一个循环。我要编辑图片,以便您可以轻松查看这两个循环 – JustOnce

+1

如果您使用'break'而不是'return',则只要'o'变量为true,第二个循环将结束并且程序将在第一个循环中继续。看看我给你的链接 - 有一个很好的例子,说明'return'和'break'语句的作用 - 它应该有助于你理解。 –

+0

谢谢。对不起,如果我忘了那个。然而,我发现了一个新的问题,关于这个数组。也许,我会先解决这个问题 – JustOnce

0

传统方法一直返回顶部主要方法,是抛出一个RuntimeException(或它的一个子类),它只被主方法捕获。任何处理异常的异常处理程序必须在执行所需的任何操作后重新抛出此异常。

请注意,您的应用程序必须非常仔细地编写以避免像打开的文件那样泄露资源。

0

不要在主要方法中做所有事情。

public static void doPartOfSomething() { 
    ... 
} 

public static String doOtherPartOfSomething(String path) { 
    ... 
    return "aresult"; // Stop the execution of this method 
} 

请注意,第二个有一个参数,并返回一个结果是所谓的(这里的String)

,然后从主的时候:你必须像其他声明的方法提取代码的一部分方法(或其他地方),你可以调用这段代码几次:

doPartOfSomething(); 
doPartOfSomething(); 
String result = doOtherPartOfSomething("/test"); 
... 

这样做,你就可以执行一些代码段,返回和停止的代码的一部分,并继续与其他呼叫进入调用方法。

我想你应该更多地了解java中的类,对象,方法和字段。

+0

谢谢你的建议:D对不起,我只是这个编程语言的新手,我有点急于构建这个。 – JustOnce