Odpowiedzi:
Użyj return
słowa kluczowego, aby wyjść z metody.
public void someMethod() {
//... a bunch of code ...
if (someCondition()) {
return;
}
//... otherwise do the following...
}
Z samouczka Java, do którego linkowałem powyżej:
Żadna metoda zadeklarowana jako void nie zwraca wartości. Nie musi zawierać instrukcji zwrotu, ale może to zrobić. W takim przypadku instrukcja return może zostać użyta do rozgałęzienia się z bloku przepływu sterowania i wyjścia z metody i jest po prostu używana w następujący sposób:
return;
Jak się wybić w Javie ??
Odp: Najlepszy sposób: System.exit(0);
Język Java udostępnia trzy stany skoku, które pozwalają na przerwanie normalnego przepływu programu.
Należą do nich break , continue , return , oznaczone instrukcja break np
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();
}
}
}
Wynik: 1
Teraz uwaga poniżej programu:
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();
}
}
}
wynik:
1
11
111
1111
and so on upto
1111111111
Podobnie możesz użyć instrukcji continue, po prostu zamień break na continue w powyższym przykładzie.
Rzeczy do zapamiętania :
Etykieta przypadku nie może zawierać wyrażeń środowiska wykonawczego obejmujących wywołania zmiennych lub metod
outerLoop:
Scanner s1=new Scanner(System.in);
int ans=s1.nextInt();
// Error s1 cannot be resolved
Jeśli jesteś głęboko w rekurencji w ramach metody rekurencyjnej, opcją może być rzucanie i przechwytywanie wyjątków.
W przeciwieństwie do Return, która zwraca tylko jeden poziom w górę, wyjątek przerwałby również metodę rekurencyjną na kod, który go początkowo wywołał, gdzie można go przechwycić.
użyj, return
aby wyjść z metody.
public void someMethod() {
//... a bunch of code ...
if (someCondition()) {
return;
}
//... otherwise do the following...
}
Oto kolejny przykład
int price = quantity * 5;
if (hasCream) {
price=price + 1;
}
if (haschocolat) {
price=price + 2;
}
return price;