Optionale Klasse in Java 8: So verwenden Sie die Methode orElseThrow(), um möglicherweise Nullwerte zu verarbeiten
Einführung:
In der Java-Entwicklung stoßen wir häufig auf Situationen, in denen wir möglicherweise mit Nullwerten umgehen. In früheren Java-Versionen haben wir normalerweise null verwendet, um das Fehlen eines Werts anzuzeigen. Es gibt jedoch einige Probleme bei der Verwendung von Null. Beispielsweise müssen wir häufig feststellen, ob es Null ist, und es besteht die Gefahr, dass Nullzeigerausnahmen auftreten. Um diese Probleme zu lösen, führte Java 8 die Klasse Optional ein. Die optionale Klasse bietet eine elegante Möglichkeit, potenziell Nullwerte zu verarbeiten.
In diesem Artikel wird orElseThrow(), eine wichtige Methode der optionalen Klasse, vorgestellt und ihre Verwendung anhand von Beispielcode demonstriert.
Grundlegende Verwendung der optionalen Klasse: Die
Optional-Klasse ist eine in Java 8 eingeführte Containerklasse, die zum Umschließen eines Werts verwendet wird, der möglicherweise Null ist. Es bietet einige Methoden, die uns beim Umgang mit Nullwertsituationen helfen. Schauen wir uns zunächst die grundlegende Verwendung der optionalen Klasse an.
Beispielcode:
String name = "Alice"; Optional<String> optionalName = Optional.ofNullable(name); // 另一种方式创建空的 Optional Optional<String> emptyOptional = Optional.empty();
Beispielcode:
if (optionalName.isPresent()) { System.out.println("存在值"); } else { System.out.println("值为空"); }
Beispielcode:
if (optionalName.isPresent()) { System.out.println("姓名为:" + optionalName.get()); } else { System.out.println("姓名为空"); }
Verwendung von orElseThrow():
Zusätzlich zur oben genannten Grundverwendung bietet die optionale Klasse auch eine leistungsstarke Methode orElseThrow(). Diese Methode löst die angegebene Ausnahme aus, wenn das optionale Objekt keinen Wert enthält.
Beispielcode:
Double price = null; Double finalPrice = Optional.ofNullable(price) .orElseThrow(() -> new IllegalArgumentException("价格为空")); System.out.println("最终价格为:" + finalPrice);
Wenn im obigen Code der Preis leer ist, wird eine IllegalArgumentException ausgelöst.
Beispielcode:
class PriceNullException extends RuntimeException { public PriceNullException(String message) { super(message); } } Double price = null; Double finalPrice = Optional.ofNullable(price) .orElseThrow(() -> new PriceNullException("价格为空")); System.out.println("最终价格为:" + finalPrice);
Wenn im obigen Code der Preis leer ist, wird eine benutzerdefinierte PriceNullException-Ausnahme ausgelöst.
Fazit:
Dieser Artikel stellt die Verwendung der orElseThrow()-Methode der optionalen Klasse in Java 8 vor und demonstriert anhand von Codebeispielen, wie mit möglichen Nullwerten umgegangen wird. Die Verwendung der optionalen Klasse kann unseren Code stabiler und sicherer machen und die Häufigkeit von Nullzeigerausnahmen verringern. Sie müssen jedoch auch darauf achten, es bei der Verwendung optionaler Klassen nicht zu übertreiben, damit der Code nicht zu langatmig und schwer verständlich wird. Ich hoffe, dass dieser Artikel den Lesern helfen kann, die optionale Klasse besser zu verstehen und zu verwenden.
Das obige ist der detaillierte Inhalt vonOptionale Klasse in Java 8: Umgang mit möglichen Nullwerten mithilfe der Methode orElseThrow(). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!