戻り値の型によるコンパイル可否の差異

戻り値の型がdoubleのメソッドは、return 0のように整数を返すような記述をしてもコンパイルができる。

// OK
double getScore(){
    return 0;
}

しかし、戻り値の型がDoubleのメソッドは、整数を返そうとするとコンパイルエラーとなる。

// NG
Double getScore(){
    return 0;
}

この場合は、return 0.0またはreturn 0d等、Double型にオートボクシングできるような値を設定する必要がある。

// OK
Double getScore(){
    return 0.0;
}