Heim > Java > javaLernprogramm > Wie gehe ich mit möglicherweise Nullwerten mithilfe der optionalen Klasse in Java um?

Wie gehe ich mit möglicherweise Nullwerten mithilfe der optionalen Klasse in Java um?

WBOY
Freigeben: 2023-08-02 11:13:15
Original
1099 Leute haben es durchsucht

Wie gehe ich mit möglichen Nullwerten mithilfe der optionalen Klasse in Java um?

Einführung:
Beim Programmieren stoßen wir oft auf Situationen, in denen wir mit möglicherweise Nullwerten umgehen müssen. Es gibt viele Möglichkeiten, mit Nullwerten umzugehen. Eine der häufigsten Methoden ist die Verwendung der optionalen Klasse in Java. Die optionale Klasse ist eine neue Funktion, die in Java 8 eingeführt wurde und darauf ausgelegt ist, Nullwertsituationen effektiv zu handhaben und eine sicherere und elegantere Codeimplementierung bereitzustellen. In diesem Artikel wird erläutert, wie Sie die optionale Klasse in Java verwenden, um möglicherweise Nullwerte zu verarbeiten, und dies anhand von Codebeispielen veranschaulichen.

  1. Was ist der optionale Kurs?
    Die optionale Klasse ist ein Containerobjekt, das einen Wert eines bestimmten Typs enthalten oder anzeigen kann, dass der Wert nicht existiert. Es bietet viele praktische Methoden zur Handhabung und Nutzung dieses Werts. Die optionale Klasse soll das Auftreten von Nullzeigerausnahmen reduzieren und die Lesbarkeit und Wartbarkeit des Codes verbessern.
  2. Grundlegende Verwendung der Optional-Klasse
    Die grundlegenden Schritte zur Verwendung der Optional-Klasse sind wie folgt:
    (1) Verwenden Sie die of()-Methode, um ein optionales Objekt zu erstellen und einen Wert zu übergeben, der möglicherweise leer ist
    (2) Verwenden Sie die Methode isPresent(), um das optionale Objekt zu ermitteln.
    (3) Verwenden Sie die Methode get(), um den Wert im optionalen Objekt abzurufen.
    (4) Verwenden Sie die Methode orElse(), um a festzulegen Standardwert, der verwendet wird, um einen Sicherungswert bereitzustellen, wenn das optionale Objekt leer ist.

Hier ist ein einfaches Beispiel, das zeigt, wie die Klasse Optional verwendet wird, um einen möglicherweise leeren Zeichenfolgenwert zu verarbeiten:

import java.util.Optional;

public class OptionalExample {
    public static void main(String[] args) {
        String text = null;

        Optional<String> optional = Optional.ofNullable(text);

        if (optional.isPresent()) {
            String result = optional.get();
            System.out.println("Value exists: " + result);
        } else {
            System.out.println("Value does not exist");
        }

        String defaultValue = optional.orElse("Default Value");
        System.out.println("Value: " + defaultValue);
    }
}
Nach dem Login kopieren

Im obigen Beispiel erstellen wir zunächst einen möglicherweise leeren Zeichenfolgentext und übergeben die Methode ofNullable(), um ihn in einen zu kapseln Optionales Objekt. Verwenden Sie dann die Methode isPresent(), um festzustellen, ob das optionale Objekt einen Wert enthält. Wenn ein Wert vorhanden ist, erhalten wir den Wert über die Methode get() und drucken ihn aus. Wenn das optionale Objekt keinen Wert enthält, wird „Wert existiert nicht“ ausgegeben. Verwenden Sie abschließend die Methode orElse(), um einen Standardwert festzulegen, der zurückgegeben wird, wenn das optionale Objekt leer ist.

  1. Andere häufig verwendete Methoden der Optional-Klasse
    Zusätzlich zu den Methoden isPresent(), get() und orElse() im obigen Beispiel stellt die Optional-Klasse auch einige andere häufig verwendete Methoden bereit, wie unten gezeigt:

(1) ifPresent(Consumer Consumer): Wenn das optionale Objekt einen Wert enthält, führen Sie die im Consumer angegebene Operation aus.
(2) orElseGet(Supplier Lieferant): Wenn das Das optionale Objekt ist leer. Übergeben Sie den Lieferanten. Die bereitgestellte Methode erhält einen alternativen Wert vom Mapper bereitgestellt und ein neues optionales Objekt wird zurückgegeben;
(5) flatMap(Function> ; Mapper): Wenn im optionalen Objekt ein Wert vorhanden ist, wird der Wert über die bereitgestellten Methoden verarbeitet vom Mapper und ein neues optionales Objekt wird zurückgegeben.

Hier ist ein Beispiel, das zeigt, wie die Methode map() zum Verarbeiten von Werten in einem optionalen Objekt verwendet wird:

import java.util.Optional;

public class OptionalExample {
    public static void main(String[] args) {
        String text = "Hello World";

        Optional<String> optional = Optional.ofNullable(text);

        Optional<String> transformed = optional.map(s -> s.toUpperCase());

        transformed.ifPresent(s -> System.out.println("Transformed Value: " + s));
    }
}
Nach dem Login kopieren

Im obigen Beispiel erstellen wir zunächst einen möglicherweise leeren Zeichenfolgentext und übergeben ihn durch die Methode ofNullable() kapselt es in ein optionales Objekt. Verwenden Sie dann die Methode map(), um den Wert im optionalen Objekt zu verarbeiten, ihn in Großbuchstaben umzuwandeln und ihn in einem neuen transformierten optionalen Objekt zu speichern. Verwenden Sie abschließend die Methode ifPresent(), um festzustellen, ob das transformierte Objekt einen Wert enthält, und drucken Sie ihn aus.

Zusammenfassung:

Durch die Einleitung dieses Artikels haben wir gelernt, wie die optionale Klasse in Java mit möglichen Nullwerten umgeht. Durch die Verwendung der optionalen Klasse kann das Auftreten von Nullzeigerausnahmen effektiv reduziert und die Lesbarkeit und Wartbarkeit des Codes verbessert werden. Im eigentlichen Programmierprozess sollten wir die verschiedenen Methoden der optionalen Klasse vollständig nutzen und mögliche Nullwerte angemessen behandeln, um die Qualität und Stabilität des Codes zu verbessern.


Referenzen:

1. „Detaillierte Erläuterung der Verwendung von Java 8 Optional“: https://www.cnblogs.com/wang-meng/p/7003935.html

2. „Detaillierte Erläuterung der optionalen Java 8-Klasse ": https://www.jianshu.com/p/831b6ff0c284

Das obige ist der detaillierte Inhalt vonWie gehe ich mit möglicherweise Nullwerten mithilfe der optionalen Klasse in Java um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage