ホームページ >Java >&#&チュートリアル >Java が「互換性のない型: void は変換できません」エラーをスローするのはなぜですか?
問題:
Java コンパイル メッセージ「互換性のない型: void を変換できません」 ... に変換されました」は、コンパイラが void 型に関連する型エラーを検出したことを示します。具体的には、値を返さないメソッドの結果をコードが使用しようとしていることを意味します。
詳細な説明:
プリミティブとは異なり、void 型または参照型は、値が存在しないことを示します。これは主に、メソッドが値を返さないことを示すためにメソッド宣言で使用されます。このようなメソッドを呼び出した場合、使用できる値が返されることは期待できません。
例:
次のコードを考えてみましょう:
public class Test { private static void add(int a, int b) { int res = a + b; } public static void main(String[] args) { int sum = add(1, 1); } }
このコードをコンパイルすると、次のエラーが表示されます:
error: incompatible types: void cannot be converted to int int sum = add(1, 1); ^
このエラーadd メソッドの結果 (void) を int 変数に代入しようとしていることを示します。ただし、void は値を表さないため、どの型の変数にも割り当てることはできません。
解決策:
このエラーを修正するには、次のいずれかを実行します。
以上がJava が「互換性のない型: void は変換できません」エラーをスローするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。