$ 0 0 String a = String.valueOf(100L); String b = (String)100L; 前者は正常に実行できるが後者はコンパイルエラーになるのはなぜですか?参考書には互換性がないからと書いてありましたが、互換性の一覧表みたいなのはどこかにありますか?