KITFORMA · EDİTÖR YANITI
List<? extends Number> okunurken neden içine Integer eklenemez?
KitForma editör rehberi. Bilinmeyen öğe türü Integer’dan farklı ve daha dar bir alt tür olabilir. Üst sınırı bilmek okumaya yeter, uygun öğe üretmeye yetmez.
Adım adım yanıt
List<Number> output = new ArrayList<>(); oluştur, kaynak değerlerini kopyala ve yeni integer’ı oraya ekle. Metot çağıranın hedefine yalnız Integer yazıyorsa alt sınır içeren hedef parametresi tanımla. Unchecked cast kullanma; yalnız Double içeren kaynak neden güvensiz olduğunu gösterir.
Unchecked uyarıları açık derle ve eklenen değerden farklı türde bir kaynakla dene. Kabı kopyalamak içindeki değişebilir nesneleri derin kopyalamaz; öğelerin sahipliği için ayrıca kural gerekir.Kaynaklar ve doğrulama
Kaynak kontrolü:
Kapsam notu: Bu editör rehberi belirtilen kaynaklara ve araç davranışına dayanır. Forum sorusu veya kendi sitemizde görülen sorgu; genel arama hacmi, düşük rekabet, sıralama garantisi ya da başka cevapların yetersizliği anlamına gelmez.
Bu editör yanıtı KitForma tarafından yapay zekâ desteğiyle hazırlanmıştır; gerçek bir üye sorusu veya bağımsız kullanıcı yorumu gibi sunulmaz. Kaynakları ve kendi dosyandaki sonucu kontrol et. Hata görürsen tartışmada bildirebilirsin.