Null tespiti

Java'da Veri Temizleme

Dennis Lee

Software Engineer

Veri nerede?

  • Eksik veri: null ve boşlar
    • Null: Veri yok
    • Boş: Boşluklar, olası hatalar

 

Başlık Yayın Tarihi Puan Yorum Sayısı Fiyat
Python Crash Course 1/10/23 4.8 165 $30.61
9/13/19 4.8 2,521 $38.00
Clean Code 8/1/08 [null] [null] [null]
Java'da Veri Temizleme

Null değerlerden kaynaklanan hatalar

// book, reviewCount, rating ve price alanlarını içermiyor
BookSales book = new BookSales("Clean Code", LocalDate.of(2008, 8, 1),
                               null, null, null)


// rating null, bu nedenle kod NullPointerException fırlatır int rating = book.rating();
Exception in thread "main" java.lang.NullPointerException
Java'da Veri Temizleme

Null değerleri kontrol etme

// Objects'ı içe aktarın
import java.util.Objects;
// .isNull() kullanın
if (Objects.isNull(book.rating())) {
    System.out.println("Eksik puan");
}
Eksik puan
Java'da Veri Temizleme

Null'lar için varsayılan değer sağlama

import java.util.Optional;
// Sayılar için Optional.ofNullable kullanın
double rating = Optional.ofNullable(book.rating()).orElse(0.0);
System.out.println("Kitap puanı: " + rating);
Kitap puanı: 0.0
// Metinler için Objects.toString kullanın
String displayTitle = Objects.toString(book.title(), "[No Title]");
System.out.println(displayTitle);
Book title: [No Title]
Java'da Veri Temizleme

Boş/null dizeleri kontrol etme

import org.apache.commons.lang3.StringUtils;  // Dize işlemleri için yardımcı araç
// book başlıktan yoksun
BookSales book = new BookSales(" ", LocalDate.of(2019, 9, 13), 2521, 4.5, 38.00)


if StringUtils.isBlank(book.title()) { System.out.println("Geçersiz - boş başlık"); }
Geçersiz - boş başlık
Java'da Veri Temizleme

Boş sayıları kontrol etme

// priceText boş
String priceText = " ";

// Sayıya çevirmeden önce boş değerleri kontrol edin
if StringUtils.isBlank(priceText) {
    System.out.println("Geçersiz fiyat: boş algılandı");
}
Geçersiz fiyat: boş algılandı
Java'da Veri Temizleme

Özet: null ve boş değerleri tespit etme

  • Null değerler eksik veya tanımsız veriyi gösterir
    • Temel importlar: java.util.Objects ve java.util.Optional
    • Kullanımdan önce null kontrolü yaparak NullPointerException önleyin
    • Null kontrolü için Objects.isNull() kullanın
    • Varsayılan değer için Optional.ofNullable() kullanın
  • Boş değerler, boş veya yalnızca boşluk içeren metindir
    • Temel import: org.apache.commons.lang3.StringUtils
    • "", null veya yalnızca boşluk için StringUtils.isBlank() kullanın
    • Veri girişi hatalarında yaygındır
Java'da Veri Temizleme

Hadi pratik yapalım!

Java'da Veri Temizleme

Preparing Video For Download...