Здесь я хочу взять несколько строк в качестве входных данных, пока в одну из строк не будет введено только «0». И напечатайте эти строки в обратном порядке, как они были введены. Как бы то ни было, я сталкиваюсь с трудностями в использовании помеченного перерыва. Я получаю следующую ошибку:ошибка ошибки недоступности, полученная с использованием помеченного перерыва
PrintRevOrderLines.java:17: error: unreachable statement
System.out.println("\nReversed order of lines is as follows..\n");
^
1 error
Я не могу понять, почему строка 17 недоступна. Я знаю, что я могу легко использовать только оператор «break» (не помеченный перерыв), разрешить добавление переменной «count» еще больше, чем на самом деле, а затем, во время печати, сделать так: for(int i=count-1;i>=0;i--)
и избежать печати 0 , но я хочу
- остановить значение счетчика на правильное значение и,
- знаю, почему линия 17 недостижим
Мой код выглядит следующим образом:
import java.io.*;
class PrintRevOrderLines
{
public static void main(String[] args) throws IOException
{
int count = 0;
String inputs[] = new String[100];
System.out.println("Enter 0 and hit enter to stop inputting values..\n");
BufferedReader B = new BufferedReader(new InputStreamReader(System.in));
for(int i=0;;i++)
thisblock:
{
inputs[i] = B.readLine();
if(inputs[i].charAt(0)=='0'){break thisblock;}
count++;
}
System.out.println("\nReversed order of lines is as follows..\n");
for(int i=count;i>=0;i--)
{
System.out.println(" "+inputs[i]);
}
}
}
Примечание, где ваша метка и где 'break' бы верните. –
@SotiriosDelimanolis Я попытался поместить метку после цикла в 'System.out.println (« \ nРасширенный порядок строк следующий. \ N ");' строка, но та же ошибка. – vipulnj
просмотрите http: //docs.oracle.com/javase/tutorial/java/nutsandbolts/branch.html – vandale