如何在Java中的try-catch语句中结束程序?

如何在Java中的try-catch语句中结束程序?,java,Java,我已经问了一个问题,关于如何弹出一条消息,并说请输入一个数字,但它应该结束程序。不是崩溃它,而是结束程序,然后你必须重新运行它 ` try { number = in.nextInt(); if(number >= 8) { number = 8; } else if (number <= 0) { number = 0; } }

我已经问了一个问题,关于如何弹出一条消息,并说请输入一个数字,但它应该结束程序。不是崩溃它,而是结束程序,然后你必须重新运行它

`    try 
 {
     number = in.nextInt();

       if(number >= 8) 
       { 
       number = 8; 
       }
       else if (number <= 0)
       {
       number = 0;
       }
   } 
   catch (InputMismatchException exc) 

   {
       System.out.println("Program requires NUMBER input");

   }
`

我试着休息一下;我猜在实验中,它没有起作用


更新:谢谢大家,我在以前的项目中尝试过返回,但没有成功。但它在这里起作用了,再次感谢你

如果您确定要终止该程序,您可以这样做

System.out.println("Program requires NUMBER input");
System.exit(1); // <-- non-zero to indicate an error.
使用return语句。这应该结束这种方法。System.exit0是一个可选选项。但是,在使用System.exit0时必须谨慎,因为:

exit方法强制终止Java中的所有线程 虚拟机。这太激烈了…应该为您保留System.exit 灾难性错误退出,或程序用于 在命令脚本中用作实用程序,该脚本可能取决于程序的 退出代码

来源:

如果这是你的main方法,一定要返回;否则,您可以执行以下操作:例如System.exit1

使用System.exit

或者,如果您在main函数中,您可以直接返回

使用return;,同时阅读

return语句可用于分支出控制流块并退出该方法


你可以使用简单的返回;在catch块的末尾,而不是System.exit,它将杀死jvm。

System.exit?不过,用户友好程度不太高。可能是try return:在try周围发布代码。捕获整个系统。退出想法是一个糟糕的想法。@LoicFaureLacroix如果不满足要求,这只是一个糟糕的想法。这绝对没有什么本质上的问题。比System.exit好得多,因为System.exit就像是让你的每一位员工在结束一天的工作时都把自己炸飞。
   try{
   ...
   } 
   catch (InputMismatchException exc) 

   {
       System.out.println("Program requires NUMBER input");
       System.exit(1);

   }
public static void main(String[] args) {

    return; // END OF PROGRAM :)
}