Optional.ofNullable
yöntemiyle şaşırdım.İsteğe bağlı .NULL yap ve yöntem zincirleme
private Optional<Integer> extractFirstValueFrom(InsightsResponse insight) {
return Optional.ofNullable(insight.getValues().get(0).getValue());
}
Yanlışlıkla Optional.ofNullable
argüman ifadenin içinde herhangi NullPointerExceptions
önleyeceği düşünülen: Bir gün bir İsteğe bağlı dönmek gerekiyordu bir fonksiyon yazdım.
Şimdi bunun çok aptalca bir fikir olduğunu biliyorum. Java, önce Optional.ofNullable
çağrısına geçmek için argümanları çözmelidir.
Ama bir sorum var. Amacımı başarmanın güzel ve iyi bir yolu var mı? insight.getValues().get(0).getValue()
ifadesinden bazı Tamsayı değeri veya null ifadesinden almak istiyorum. Boş değerlerin her biri şu olabilir: insight.getValues()
veya insight.getValues().get(0)
.
Bunu deneme/yakalama bloğuna yerleştirebileceğimi biliyorum, ancak daha zarif bir çözüm olup olmadığını merak ediyorum. Böyle
Sizin durumunuzda 'içgörü' boş. Null iç yöntemlerini kontrol etmek yerine null yöntemlere asla geçmemesi daha iyidir. –