2014-09-14 14 views

cevap

8

JVM'de -128 ve 127 arasındaki iki eşit tamsayı her zaman aynıdır, çünkü IntegerCache'u korur.

Bu, -128 ve 127 arasındaki iki eşit tamsayı her zaman Integer sınıfının aynı örneğidir. Farklı tamsayılar karşılaştıran

Dene:

(identical? 4 (+ 2 2)) ; true 
(identical? 127 127) ; true 
(identical? 128 128) ; false 

fazla bilgi için this answer on Code Golf bakınız.

+0

Teşekkürler, neden JVM ilk bayt için bunu yapıyor? (-128 ila 127)? – Zuriar

+0

Küçük değerlerin diğer tam sayılardan çok daha sık gerçekleştiği varsayımına dayanır, bu nedenle bunları önbelleğe almak anlamlıdır. –

İlgili konular