回答編集履歴

3

内容修正

2025/02/01 11:48

投稿

YT0014
YT0014

スコア1799

test CHANGED
@@ -3,7 +3,10 @@
3
3
  1行目で、IntegerのArrayListは、raw typeのListに代入され、中身の型が消え不明になります。
4
4
  2行目では、中身が不明な以上、Stringかもしれないので、StringのListとして適合する可能性が残り、エラーにできません。
5
5
 
6
- なお、実行時には、IntegerのArrayListを、StringのListに型変換できず、エラーになります。
6
+ ~打ち消し線~~なお、実行時には、IntegerのArrayListを、StringのListに型変換できず、エラーになります。~
7
+ 正しくは、StringのListとして、中身を取得した場合に、実行時エラーとなるそうです。
8
+ pecmmさん、ご指摘ありがとうございます。
9
+
7
10
 
8
11
  これは、<型>が、Java 5.0 で追加された仕様のため、1.4以前との互換のためにraw typeを許す必要があったための処置です。
9
12
  ちなみに、Java 5.0は、2004年9月30日にリリースされている、20年以上前の話です。

2

追記

2025/01/30 14:59

投稿

YT0014
YT0014

スコア1799

test CHANGED
@@ -9,3 +9,4 @@
9
9
  ちなみに、Java 5.0は、2004年9月30日にリリースされている、20年以上前の話です。
10
10
  当然、非推奨で、現在では、raw type は、使うべきではない機能です。
11
11
 
12
+ 参考 [Javaバージョン履歴](https://ja.wikipedia.org/wiki/Java%E3%83%90%E3%83%BC%E3%82%B8%E3%83%A7%E3%83%B3%E5%B1%A5%E6%AD%B4)

1

誤字修正

2025/01/30 14:57

投稿

YT0014
YT0014

スコア1799

test CHANGED
@@ -1,7 +1,7 @@
1
1
  1行目の左辺はraw typeと呼ぶ、中身の型を指定しないList型です。
2
2
 
3
3
  1行目で、IntegerのArrayListは、raw typeのListに代入され、中身の型が消え不明になります。
4
- 2行目では、中身が不明な以上、Stringかしれないので、StringのListとして適合する可能性が残り、エラーにできません。
4
+ 2行目では、中身が不明な以上、Stringかしれないので、StringのListとして適合する可能性が残り、エラーにできません。
5
5
 
6
6
  なお、実行時には、IntegerのArrayListを、StringのListに型変換できず、エラーになります。
7
7