HOWTO · Java
Java에서 예기치 않은 유형 오류 수정
이 자습서는 Java의 예기치 않은 유형 오류를 보여줍니다.
이 자습서는 Java의 예기치 않은 유형 오류를 보여줍니다.
Java 예기치 않은 유형 오류 수정
Java 예기치 않은 유형 오류는 변수가 아닌 값이나 표현식에 값을 할당하려고 할 때 발생합니다. 이는 변수에 값만 할당할 수 있음을 의미합니다.
예를 들어 DemoStr.charAt(i)에 변수가 아니라 값을 반환하고 char 유형을 입력하는 표현식이므로 값을 할당하려고 하면 이 코드에서 unexpected type 오류가 발생합니다.
다음은 이 오류의 예입니다.
package delftstack;
public class Example {
public static void main(String[] arg) {
String DemoStr = "delftstack";
String ReversedString = "";
for (int i = DemoStr.length() - 1; i >= 0; i--) {
DemoStr.charAt(i) += ReversedString;
}
System.out.println(ReversedString);
}
}
위의 코드는 문자열을 뒤집으려고 시도하지만 DemoStr.charAt(i)에 값을 할당하므로 Java 예기치 않은 유형 오류가 발생합니다. 출력 참조:
****.java:8: error: unexpected type
required: variable
found: value
이 오류에 대한 해결책은 변수에 값을 할당하거나 문자열 버퍼 및 reverse() 메서드를 사용하여 문자열을 반전시키는 것입니다. 두 가지 방법으로 해결 방법은 다음과 같습니다.
해결책 1:
package delftstack;
public class Example {
public static void main(String[] arg) {
String DemoStr = "delftstack";
String ReversedString = "";
for (int i = DemoStr.length() - 1; i >= 0; i--) {
ReversedString += DemoStr.charAt(i);
}
System.out.println(ReversedString);
}
}
해결책 2:
package delftstack;
public class Example {
public static void main(String[] arg) {
String DemoStr = "delftstack";
String ReversedString = "";
ReversedString = new StringBuffer(DemoStr).reverse().toString();
System.out.println(ReversedString);
}
}
두 솔루션 모두 유사한 출력으로 유사하게 작동합니다.
kcatstfled