Как остановить выполнение программы java
Прервать выполнение программы можно вызвав System.exit() .
Передав в качестве аргумента 0, мы дадим команду на завершение без ошибки. А передав любое ненулевое число N — команду на завершение с ошибкой номер N :
System.exit(0); // завершение без ошибки System.exit(1); // завершение c ошибкой 1
Вызов return из головного метода main также приведет к завершению программы.
Как выйти из метода в Java?
Любой метод, объявленный пустым, не возвращает значение. Он не должен содержать оператор возврата, но может это сделать. В этом случае оператор возврата может быть использован для выхода из блока управления и выхода из метода и просто используется так:
return;
Поделиться 29 октября 2011 в 04:41
Чтобы добавить к другим ответам, вы также можете выйти из метода, выбрасывая исключение вручную:
throw new Exception();

Поделиться 07 июля 2013 в 17:13
Как правильно выполнить break в Java?? Ответы: Лучший способ: System.exit(0); Язык Java предоставляет три скачковых оператора, которые позволяют прервать нормальный поток программы. Включая break, continue,return,метки break для примера
import java.util.Scanner; class demo < public static void main(String args[]) < outerLoop://Label for(int i=1;i<=10;i++) < for(int j=1;j<=i;j++) < for(int k=1;k<=j;k++) < System.out.print(k+"\t"); break outerLoop; >System.out.println(); > System.out.println(); > > >
Вывод: 1 Теперь обратите внимание на следующую программу:
import java.util.Scanner; class demo < public static void main(String args[]) < for(int i=1;i<=10;i++) < for(int j=1;j<=i;j++) < for(int k=1;k<=j;k++) < System.out.print(k+"\t"); break ; >> System.out.println(); > > >
1 11 111 1111 and so on upto 1111111111
Аналогично, вы можете использовать оператор continue, просто замените break на continue в примере выше. Что нужно помнить: Этикет случая не может содержать выражения времени выполнения, включающие переменную или вызовы методов
outerLoop: Scanner s1=new Scanner(System.in); int ans=s1.nextInt(); // Error s1 cannot be resolved
Поделиться 07 июля 2013 в 15:47
Если вы глубоко в рекурсии внутри рекурсивного метода, выбрасывание и ловлю исключения может быть вариантом. В отличие от возврата, который возвращает только один уровень вверх, исключение также будет выходить из рекурсивного метода в код, который изначально его назвал, где его можно поймать.
Поделиться 07 июля 2013 в 17:36
используйте return для выхода из метода.
public void someMethod() < //. a bunch of code . if (someCondition()) < return; >//. otherwise do the following. >
Вот еще один пример
int price = quantity * 5; if (hasCream) < price=price + 1; >if (haschocolat) < price=price + 2; >return price;
Поделиться 31 марта 2018 в 08:10
- использование только return; : дает Ошибку:(105, 9) java: недостижимое выражение
public class Main < public static void main(String[] args) < System.out.println("Hello World 1st code "); return; System.out.println("Hello World 2nd code "); >>
Компиляция не удалась из-за следующих ошибок(ов).
Main.java:14: error: unreachable statement System.out.println("Hello World 2nd code "); ^ 1 error
- используя exit(int status) пример exit(0); : как вы знаете, завершите всю программу (Метод java.lang.System.exit() завершает текущую работу виртуальной машины Java. См. ссылку.) ; Таким образом, exit не позволяет нарушить только метод и продолжить выполнение вызывающего элемента
Вы можете протестировать 3 техники, используя следующий код:
public class Main < public static void do_something(int i) < System.out.println(" i : "+i); // break the method /// System.exit(0); // stop all the program /// return; // Main.java:20: error: unreachable statemen if(true) return; // do some computing int res = i*i; System.out.println(" res : "+res); >public static void main(String[] args) < for (int i = 0; i System.out.println("Ouiiiii , work finished "); > >
i : 0 i : 1 i : 2 i : 3 i : 4 Ouiiiii , work finished
Поделиться 24 марта 2021 в 14:34
Используйте ключевое слово return для выхода из метода.
public void someMethod() < //. a bunch of code . if (someCondition()) < return; >//. otherwise do the following. >
Обратите внимание: Мы можем использовать операторы break, которые используются для выхода/выхода только из цикла, а не из всей программы.
Для выхода из программы: System.exit() Метод:
System.exit имеет статус-код, который сообщает о прекращении, например:
exit(0) : указывает на успешное прекращение.
exit(1) или exit(-1) или любое ненулевое значение — указывает на неудачное прекращение.
System.exit() в Java – что это?
Java – язык программирования, имеющий множество приложений. При программировании для одного из этих приложений вы можете застрять на каком-то этапе этой программы. Что делать в этой ситуации? Есть ли способ выйти в этой самой точке? Если эти вопросы вас беспокоят, вы попали в нужное место.
Что вы можете сделать, это просто использовать метод System.exit(), который завершает текущую виртуальную машину Java, работающую в системе.
Как вы выходите из функции в Java?
Вы можете выйти из функции, используя метод java.lang.System.exit(). Этот метод завершает текущую запущенную виртуальную машину Java (JVM). Он принимает аргумент «код состояния», где ненулевой код состояния указывает на ненормальное завершение.
Если вы работаете с циклами Java или операторами switch, вы можете использовать операторы break, которые используются для прерывания / выхода только из цикла, а не всей программы.
Что такое метод System.exit()?
Метод System.exit() вызывает метод exit в классе Runtime. Это выходит из текущей программы, завершая виртуальную машину Java. Как определяет имя метода, метод exit() никогда ничего не возвращает.
Вызов System.exit (n) фактически эквивалентен вызову:
Runtime.getRuntime().exit(n)
Функция System.exit имеет код состояния, который сообщает о завершении, например:
- выход (0): указывает на успешное завершение.
- выход (1) или выход (-1) или любое ненулевое значение – указывает на неудачное завершение.
Исключение: выдает исключение SecurityException.
Примеры
package Edureka; import java.io.*; import java.util.*; public class ExampleProgram< public static void main(String[] args) < int arr[] = ; for (int i = 0; i < arr.length; i++) < if (arr[i] >= 4) < System.out.println("Exit from the loop"); System.exit(0); // Terminates JVM >else System.out.println("arr["+i+"] = " + arr[i]); > System.out.println("End of the Program"); > >
Выход: arr [0] = 1 arr [1] = 2 arr [2] = 3 Выход из цикла
Объяснение: В приведенной выше программе выполнение останавливается или выходит из цикла, как только он сталкивается с методом System.exit(). Он даже не печатает второй оператор печати, который говорит «Конец программы». Он просто завершает программу сам.
package Edureka; import java.io.*; import java.util.*; public class ExampleProgram< public static void main(String[] args) < int a[]= ; for(int i=0;ielse < System.out.println("Exit from the loop"); System.exit(0); //Terminates jvm >> > >
Вывод: array [0] = 1 array [1] = 2 array [2] = 3 array [3] = 4 Выход из цикла
Объяснение: В приведенной выше программе она печатает элементы до тех пор, пока условие не станет истинным. Как только условие становится ложным, оно печатает оператор и программа завершается.
Как прервать выполнение метода?
В этом случае перед вызовом метода bar идет проверка на отрицательное число n .
Как по мне оператор return в void методах в 80% случае можно заменить на какую-то логику, например метод выше можно переписать вот так
public void foo(int n) < if(n >= 0) bar(n); >
Если метод что-то возвращает, то оператор return используется всегда (так как он возвращает) а иногда и более одного раза (в методах с разветвляющейся логикой)
public String foo(int n)
@Regent в комментариях меня поправил. Раз уж оператор return вернет значение и закончит выполнение метода, то лесенка if/else не нужна