Sıralanan bir listede çalışma İlkel uzun değerler için compareTo() işlevini uygulamak için gereken bir noktaya geldim.Etkili compareTo() ilkel uzun süre için
, bariz bir şekilde saf bir uygulama olup olmadığımı düşünmekteyim (), ancak bunu yapmak için zarif bir tek kodun (yeni bir Long (value) oluşturmadan) olup olmadığını merak ediyordum. Böyle
Belki bir şey:
@Override public int compareTo(MyClass that) {
return (int) ((value - that.value) >>> 32);
}
kimse bu işe yarar doğrulamak ve/veya başka bir uygulama önerebilirsiniz? Buna
Bu, temelde '(x
traveh
@traveh Performansa göre dürüstlük derim. Ayrıca, yöntem zaten JDK tarafından zaten optimize edilmiş olabilir. –
@ E_net4 Genel olarak katılıyorum ama argümanın iyiliği için performansın çok önemli olduğu özel bir durum olduğunu varsayalım. – traveh