Как вырваться или выйти из метода в Java?



ключевое слово break в Java может использоваться для выхода из цикла или оператора switch. Есть ли что-нибудь, что можно использовать, чтобы вырваться из метода?

760   5  

5 ответов:

использовать return ключевое слово для выхода из метода.

public void someMethod() {
    //... a bunch of code ...
    if (someCondition()) {
        return;
    }
    //... otherwise do the following...
}

из учебника Java, который я связал выше:

любой метод, объявленный void, не возвращает значение. Он не должен содержать оператор return, но он может это сделать. В таком случае оператор return может использоваться для ветвления из блока потока управления и выхода из метода и просто используется следующим образом:

return;

чтобы добавить к другим ответам, вы также можете выйти из метода с помощью исключение вручную:

throw new Exception();

enter image description here

как вырваться на java??

Ans: лучший способ:System.exit(0);

язык Java предоставляет три состояния перехода, которые позволяют прервать нормальный поток программы.

относятся перерыв,дальше,возвращение,помеченный оператор разрыва например

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 в приведенном выше примере.

запомните :

метка case не может содержать выражения времени выполнения, включающие вызовы переменных или методов

outerLoop:
Scanner s1=new Scanner(System.in);
int ans=s1.nextInt();
// Error s1 cannot be resolved

Если вы глубоко в рекурсии внутри рекурсивного метода, бросать и ловить исключение может быть вариантом.

В отличие от Return, который возвращает только один уровень вверх, исключение будет вырваться из рекурсивного метода, а также в код, который первоначально вызвал его, где он может быть пойман.

использовать 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;

Comments

    Ничего не найдено.