Korumasız ilk öğe erişimi (ARCH4078)
Anahtar java.performance.first-or-default-null · Önem warning · Kategori performance
Filtrelenmiş bir sonucun ilk öğesine boşluk kontrolü yapmadan erişmek, sonuç boşsa istisna fırlatır. findFirst ile dönen Optional güvenli biçimde ele alınmalıdır.
Hatalı
Bölüm başlığı “Hatalı”User admin = users.stream() .filter(User::isAdmin) .collect(toList()) .get(0);return admin.getName();return users.stream() .filter(User::isAdmin) .findFirst() .map(User::getName) .orElse("none");Düzeltme
Bölüm başlığı “Düzeltme”get(0) yerine findFirst() kullanın ve dönen Optional’ı orElse ile karşılayın.