[解決済み] Java Collectionsのremoveメソッドはなぜgenericではないのですか?
2022-04-29 04:30:29
質問
なぜ、そうしないのか? Collection.remove(Object o) ジェネリック?
のようです。
Collection<E>
かもしれない
boolean remove(E o);
そして、誤って(例えば)削除しようとしたときに
Set<String>
からの個々の文字列ではなく
Collection<String>
の場合、後でデバッグの問題ではなく、コンパイル時のエラーになります。
どのように解決するのですか?
Josh BlochとBill Pughは、この問題について次のように言及しています。 Java パズラーズIV:The ファントムリファレンスメナス、アタックオブザクローン、リベンジオブザクローン シフト .
Josh Blochは(6:41)、getメソッドの生成に挑戦したそうです。 のMap、removeメソッド、その他のメソッドがありますが、単にうまくいきませんでした"。
には、生成できない合理的なプログラムがあまりにも多くあります。
コレクションの一般的な型しかパラメータとして認めない。
彼の示した例は、コレクションを構成する要素である
List
の
Number
sと
List
の
Long
s.
関連
-
Eclipseで "XXXX "の解決策を(型に)解決することができない
-
SocketTimeoutExceptionです。読み込みがタイムアウトしました
-
[解決済み] なぜJavaにはtransientフィールドがあるのですか?
-
[解決済み] 特定のUnicode文字を含むコメントでのJavaコードの実行が許可されているのはなぜですか?
-
[解決済み] Javaで汎用配列を作成する方法は?
-
[解決済み] List<Dog> は List<Animal> のサブクラスですか?Java のジェネリックはなぜ暗黙のうちに多相性にならないのですか?
-
[解決済み] なぜJava 8のOptionalは引数で使ってはいけないのか
-
[解決済み] Map.get(オブジェクトキー)が(完全な)ジェネリックでない理由は何でしょうか?
-
[解決済み] 値のペアのJavaコレクション?(タプル?)
-
[解決済み] なぜJavaのenumリテラルは汎用型パラメータを持つことができないのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Java エラー報告 スレッド "main" での例外 java.util.NoSuchElementException
-
スタイルが読み込まれず、ブラウザのコンソールでエラーが報告される。リソースはスタイルシートとして解釈されますが、MIMEタイプtext/htmlで転送されます。
-
エラーが報告されました。リソースの読み込みに失敗しました:サーバーは500(内部サーバーエラー)のステータスで応答しました。
-
SpringBootApplication を型解決できない。
-
Dateが型に解決できない問題を解決する
-
JQuery DataTable 详解
-
リソースの読み込みに失敗しました。サーバーはステータス500(内部サーバーエラー)で応答しました。
-
マスキング このリソースにアクセスするには、完全な認証が必要です。
-
spring-boot 401 このリソースにアクセスするには完全な認証が必要です エラー解決
-
spring aop アドバイスからの Null 戻り値が、サマリーのプリミティブ戻り値と一致しない。