HOWTO · Java
Java에서 도달할 수 없는 명령문 오류 해결
이 자습서는 Java의 도달할 수 없는 명령문 오류를 보여줍니다.
이 튜토리얼은 Java의 unreachable statement 오류를 보여줍니다.
Java에서 도달할 수 없는 문 오류의 원인
도달할 수 없는 문 오류는 제어 흐름 문을 분기한 후 문을 넣으려고 할 때 발생합니다. 분기문에는 코드의 다른 부분으로 점프하는 데 사용되는 break, continue 및 return이 포함됩니다.
이러한 명령문은 일반적으로 루프를 중단하거나 반복을 건너뛰거나 값을 반환하기 위해 루프에 포함됩니다. 이러한 분기 문 바로 뒤에 코드 문을 넣으면 도달할 수 없는 문이라는 컴파일 오류가 발생합니다.
다음은 break, continue 및 return 문을 사용하는 unreachable statement 오류의 예입니다.
break 사용:
package delftstack;
public class Unreachable_Statement {
public static void main(String... args) {
int[] DemoArray = {350, 780, 300, 500, 120, 1024, 1350};
int DemoNumber = 1024;
for (int INTEGER : DemoArray) {
if (INTEGER == DemoNumber) {
break;
System.out.println("The number is: " + DemoNumber);
}
}
}
}
이에 대한 출력은 다음과 같습니다.
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Unreachable code
at delftstack.Unreachable_Statement.main(Unreachable_Statement.java:12)
계속 사용:
package delftstack;
public class Unreachable_Statement {
public static void main(String... args) {
int[] DemoArray = {350, 780, 300, 500, 120, 1024, 1350};
int DemoNumber = 1024;
for (int INTEGER : DemoArray) {
if (INTEGER == DemoNumber) {
continue;
System.out.println("The number is: " + DemoNumber);
}
}
}
}
이에 대한 출력도 동일합니다.
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Unreachable code
at delftstack.Unreachable_Statement.main(Unreachable_Statement.java:12)
반환 사용:
package delftstack;
public class Unreachable_Statement {
public static void main(String... args) {
int[] DemoArray = {350, 780, 300, 500, 120, 1024, 1350};
int DemoNumber = 1024;
for (int INTEGER : DemoArray) {
if (INTEGER == DemoNumber) {
return;
System.out.println("The number is: " + DemoNumber);
}
}
}
}
출력은 다음과 같습니다.
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Unreachable code
at delftstack.Unreachable_Statement.main(Unreachable_Statement.java:12)
Java에서 도달할 수 없는 문 오류 해결
해결 방법은 분기 문 바로 뒤에 코드를 작성하지 않는 것입니다. break문을 사용하여 발생한 오류에 대한 코드 솔루션을 참조하십시오.
package delftstack;
public class Unreachable_Statement {
public static void main(String... args) {
int[] DemoArray = {350, 780, 300, 500, 120, 1024, 1350};
int DemoNumber = 500;
boolean FoundNumber = false;
for (int INTEGER : DemoArray) {
if (INTEGER == DemoNumber) {
FoundNumber = true;
break;
}
}
if (FoundNumber) {
System.out.println("The number is: " + DemoNumber);
}
}
}
다른 if 조건에 명령문을 넣었습니다. 이제 코드가 제대로 작동합니다.
출력 참조:
The number is: 500
마찬가지로 continue 및 return 문에 대한 솔루션을 만들 수 있습니다. 규칙은 분기 문 바로 뒤에 코드를 넣지 않는 것입니다.