Datenbereinigung in Java
Dennis Lee
Software Engineer
| Titel | Veröffentlichungsdatum | Bewertung | Anzahl Bewertungen | Preis |
|---|---|---|---|---|
| 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] |
// book fehlt reviewCount, rating und price BookSales book = new BookSales("Clean Code", LocalDate.of(2008, 8, 1), null, null, null)// rating ist null, daher wird eine NullPointerException ausgelöst int rating = book.rating();
Exception in thread "main" java.lang.NullPointerException
// Objects importieren
import java.util.Objects;
// .isNull() verwenden
if (Objects.isNull(book.rating())) {
System.out.println("Bewertung fehlt");
}
Bewertung fehlt
import java.util.Optional;
// Für Zahlen Optional.ofNullable verwenden
double rating = Optional.ofNullable(book.rating()).orElse(0.0);
System.out.println("Book rating: " + rating);
Book rating: 0.0
// Für Strings Objects.toString verwenden
String displayTitle = Objects.toString(book.title(), "[No Title]");
System.out.println(displayTitle);
Book title: [No Title]
import org.apache.commons.lang3.StringUtils; // Utility für String-Operationen
// book hat keinen Titel BookSales book = new BookSales(" ", LocalDate.of(2019, 9, 13), 2521, 4.5, 38.00)if StringUtils.isBlank(book.title()) { System.out.println("Ungültig – leerer Titel"); }
Ungültig – leerer Titel
// priceText ist leer
String priceText = " ";
// Vor der Zahlumwandlung auf Leerwerte prüfen
if StringUtils.isBlank(priceText) {
System.out.println("Ungültiger Preis: Leerwert erkannt");
}
Ungültiger Preis: Leerwert erkannt
java.util.Objects und java.util.OptionalNullPointerException vermeiden: vor Nutzung auf null prüfenObjects.isNull() auf null prüfenOptional.ofNullable() Standardwerte setzenorg.apache.commons.lang3.StringUtilsStringUtils.isBlank() erkennt "", null oder nur LeerzeichenDatenbereinigung in Java