2015-04-17 24 views
7

Aşağıdakileri yazmak güzel midir? > < İçindeDatatype belirtilmemiş Set

Set<Integer> integs = new HashSet<>();

, o kadar boş bırakmak gayet?

+2

Evet, elmas operatörü '<>' anlaması olacak '' referans türünden jenerik türü olarak. Nereye gitti bu yineleniyor ... – Pshemo

+0

Ayrıca bkz http://stackoverflow.com/questions/4166966/what-is-the-point-of-the-diamond-operator-in-java-7 – Radiodef

+1

Bu zaten yanıtlandı burada: http://stackoverflow.com/questions/8660202/what-does-mean-for-java-generics –

cevap

3

Java 7'den itibaren derleyici, karma kümesinin veri türünü iki kez yazmak zorunda kalmadan çıkaracaktır.

Derleyicinin türden türetmediği bazı senaryolar olmasına rağmen, daha karmaşık senaryolar için derleme hataları alabilirsiniz.

Bunun birçoğu here.

2

Sen tip parametrelerin bir boş küme ile genel bir sınıfın yapıcısı çağırmak için gerekli tip argümanları yerini alabilir documentation

açıklandığı gibi java 7 veya daha yüksek kullanıyorsanız Evet (<>) bağlamdan tür bağımsız değişkenleri anlaması derleyici sürece. Bu açılı ayraç çifti gayri resmi olarak pırlanta elmas olarak adlandırılır.

İlgili konular