> Java > java지도 시간 > Java에서 '호환되지 않는 유형: void를 변환할 수 없습니다...' 오류가 발생하는 이유는 무엇입니까?

Java에서 '호환되지 않는 유형: void를 변환할 수 없습니다...' 오류가 발생하는 이유는 무엇입니까?

Barbara Streisand
풀어 주다: 2024-12-26 00:44:09
원래의
142명이 탐색했습니다.

Why Does Java Throw an

호환되지 않는 유형: "Void는 다음으로 변환할 수 없습니다." 오류 이해

"호환되지 않는 유형: void는 변환할 수 없습니다"라는 오류 메시지 to ..."는 선언적으로 값을 반환하지 않는 메서드(void라고도 함)의 결과를 코드에서 사용하려고 할 때 발생합니다. type.

문제 정의:

Java 메소드는 결과를 생성하지 않음을 나타내기 위해 void 키워드를 사용하여 반환 값을 선언합니다. 그러나 코드가 실수로 void 메서드의 값을 할당하거나 처리하려고 하면 컴파일러에서 이 오류가 발생합니다.

해결 방법:

문제를 해결하려면 다음을 결정하세요. 코드가 void 메소드의 결과를 기대하는 이유. 두 가지 기본 접근 방식이 있습니다.

1. 메서드 선언 수정:

적절한 값 유형을 반환하도록 메서드 선언을 변경합니다. 예를 들어 add 메소드가 입력의 합계를 반환해야 하는 경우

private static int add(int a, int b) {
    return a + b;
}
로그인 후 복사

2로 선언해야 합니다. 결과 할당 제거:

또는 코드에 메서드 결과가 필요하지 않은 경우 할당을 제거하거나 다음을 사용하세요.

add(1, 1); // Calling the method without assigning the result
로그인 후 복사

자세한 예:

다음을 고려하세요 코드:

public class Main {
    private static void add(int a, int b) {
        int sum = a + b;
    }

    public static void main(String[] args) {
        int result = add(1, 1);
    }
}
로그인 후 복사

이 코드를 Java 8로 컴파일하면 다음 오류가 발생합니다.

Main.java:9: error: incompatible types: void cannot be converted to int
        int result = add(1, 1);
                        ^
1 error
로그인 후 복사

이 오류는 add가 값을 반환하지 않는 void 메소드이지만 코드는 다음을 시도함을 나타냅니다. 존재하지 않는 반환 값을 결과에 할당합니다. 해결책은 아래와 같이 int 값을 반환하도록 add 메서드 선언을 수정하는 것입니다.

public class Main {
    private static int add(int a, int b) {
        return a + b;
    }

    public static void main(String[] args) {
        int result = add(1, 1);
    }
}
로그인 후 복사

결론:

"호환되지 않는 유형: void는 사용할 수 없음" 이해하기 ...으로 변환됩니다." 오류 메시지에는 void 메소드에 대한 지식과 해당 반환 값의 올바른 처리가 필요합니다. 개발자는 메서드 선언을 수정하거나 코드의 기대치를 조정하여 이 오류를 수정하고 코드가 Java 유형 시스템을 준수하는지 확인할 수 있습니다.

위 내용은 Java에서 '호환되지 않는 유형: void를 변환할 수 없습니다...' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿