Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> Java

Java 8 - Optionele klasse

Optioneel is een containerobject dat wordt gebruikt om niet-null-objecten te bevatten. Optioneel object wordt gebruikt om null weer te geven met afwezige waarde. Deze klasse heeft verschillende hulpprogramma's om code te vergemakkelijken om waarden als 'beschikbaar' of 'niet beschikbaar' te verwerken in plaats van null-waarden te controleren. Het is geïntroduceerd in Java 8 en is vergelijkbaar met wat Optioneel is in Guava.

Klasseverklaring

Hieronder volgt de verklaring voor java.util.Optional klasse −

public final class Optional<T> extends Object

Klasse Methode

Sr.nr. Methode en beschrijving
1

statisch Optioneel leeg()

Retourneert een lege optionele instantie.

2

boolean is gelijk aan(Object obj)

Geeft aan of een ander object "gelijk is aan" dit Optioneel.

3

Optioneel filter(predikaat predikaat)

Als een waarde aanwezig is en de waarde komt overeen met een bepaald predikaat, retourneert het een Optioneel die de waarde beschrijft, anders retourneert het een lege Optioneel.

4

Optioneel flatMap(Function> mapper)

Als er een waarde aanwezig is, past deze de verstrekte toewijzingsfunctie voor optionele lagers erop toe, retourneert dat resultaat en retourneert anders een lege Optioneel.

5

T get()

Als er een waarde aanwezig is in deze Optioneel, wordt de waarde geretourneerd, anders wordt NoSuchElementException gegenereerd.

6

int hashCode()

Retourneert de hash-codewaarde van de huidige waarde, indien aanwezig, of 0 (nul) als er geen waarde aanwezig is.

7

void ifPresent(Consumer consumer)

Als een waarde aanwezig is, roept het de gespecificeerde consument op met de waarde, anders doet het niets.

8

boolean isPresent()

Retourneert waar als er een waarde aanwezig is, anders onwaar.

9

Optionele map(Function mapper)

Als een waarde aanwezig is, wordt de verstrekte toewijzingsfunctie erop toegepast en als het resultaat niet-null is, wordt een Optioneel geretourneerd dat het resultaat beschrijft.

10

statisch Optioneel van (T-waarde)

Retourneert een Optioneel met de opgegeven huidige niet-null-waarde.

11

statisch Optioneel ofNullable(T-waarde)

Retourneert een Optioneel die de opgegeven waarde beschrijft, indien niet-null, anders retourneert een lege Optioneel.

12

T ofElse(T andere)

Retourneert de waarde indien aanwezig, anders retourneert andere.

13

T orElseGet(Leverancier overig uit)

Retourneert de waarde indien aanwezig, anders roept andere op en retourneert het resultaat van die aanroep.

14

T orElseThrow(Leverancier exceptionSupplier uit)

Retourneert de ingesloten waarde, indien aanwezig, anders wordt een uitzondering gegenereerd die door de opgegeven leverancier moet worden gemaakt.

15

String toString()

Retourneert een niet-lege tekenreeksrepresentatie van deze Optioneel die geschikt is voor foutopsporing.

Deze klasse erft methoden van de volgende klasse −

  • java.lang.Object

Optioneel voorbeeld

Maak het volgende Java-programma met een editor naar keuze, bijvoorbeeld C:\> JAVA.

Java8Tester.java

Live demo
import java.util.Optional;

public class Java8Tester {

   public static void main(String args[]) {
      Java8Tester java8Tester = new Java8Tester();
      Integer value1 = null;
      Integer value2 = new Integer(10);
		
      //Optional.ofNullable - allows passed parameter to be null.
      Optional<Integer> a = Optional.ofNullable(value1);
		
      //Optional.of - throws NullPointerException if passed parameter is null
      Optional<Integer> b = Optional.of(value2);
      System.out.println(java8Tester.sum(a,b));
   }
	
   public Integer sum(Optional<Integer> a, Optional<Integer> b) {
      //Optional.isPresent - checks the value is present or not
		
      System.out.println("First parameter is present: " + a.isPresent());
      System.out.println("Second parameter is present: " + b.isPresent());
		
      //Optional.orElse - returns the value if present otherwise returns
      //the default value passed.
      Integer value1 = a.orElse(new Integer(0));
		
      //Optional.get - gets the value, value should be present
      Integer value2 = b.get();
      return value1 + value2;
   }
}

Verifieer het resultaat

Stel de klas samen met javac compiler als volgt −

C:\JAVA>javac Java8Tester.java

Voer nu de Java8Tester als volgt uit −

C:\JAVA>java Java8Tester

Het zou de volgende output moeten produceren −

First parameter is present: false
Second parameter is present: true
10

Java

  1. Java laatste trefwoord
  2. Java-instantie van Operator
  3. Java-erfenis
  4. Java geneste statische klasse
  5. Java anonieme klasse
  6. Java Singleton-klasse
  7. Java-reflectie
  8. Java ObjectOutputStream-klasse
  9. Java-generieken
  10. Java-bestandsklasse
  11. Java 9 - Optionele klasseverbeteringen