Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> java

Java 8 - Kelas Opsional

Opsional adalah objek wadah yang digunakan untuk memuat objek bukan nol. Objek opsional digunakan untuk mewakili null dengan nilai tidak ada. Kelas ini memiliki berbagai metode utilitas untuk memfasilitasi kode untuk menangani nilai sebagai 'tersedia' atau 'tidak tersedia' alih-alih memeriksa nilai nol. Ini diperkenalkan di Java 8 dan mirip dengan Optional yang ada di Guava.

Deklarasi Kelas

Berikut ini adalah deklarasi untuk java.util.Optional kelas

public final class Optional<T> extends Object

Metode Kelas

No.Sr. Metode &Deskripsi
1

statis Opsional kosong()

Mengembalikan instance Opsional kosong.

2

boolean sama dengan(Objek objek)

Menunjukkan apakah beberapa objek lain "sama dengan" Opsional ini.

3

Filter Opsional(Predikat)

Jika ada nilai dan nilainya cocok dengan predikat yang diberikan, nilai tersebut mengembalikan Opsional yang menjelaskan nilai, jika tidak mengembalikan Opsional kosong.

4

Opsional flatMap(Fungsi> mapper)

Jika ada nilai, nilai akan menerapkan fungsi pemetaan bantalan Opsional yang disediakan, mengembalikan hasil tersebut, jika tidak mengembalikan Opsional kosong.

5

Dapatkan()

Jika ada nilai dalam Opsional ini, kembalikan nilainya, jika tidak, lemparkan NoSuchElementException.

6

int kode hash()

Mengembalikan nilai kode hash dari nilai sekarang, jika ada, atau 0 (nol) jika tidak ada nilai.

7

void ifPresent(Konsumen konsumen)

Jika ada nilai, ia akan memanggil konsumen tertentu dengan nilai tersebut, jika tidak, tidak akan melakukan apa pun.

8

boolean isPresent()

Mengembalikan nilai true jika ada nilai yang ada, jika tidak salah.

9

Opsional peta(Fungsi mapper)

Jika ada nilai, terapkan fungsi pemetaan yang disediakan padanya, dan jika hasilnya bukan nol, kembalikan Opsional yang menjelaskan hasilnya.

10

statis Opsional dari(nilai T)

Mengembalikan Opsional dengan nilai non-null saat ini yang ditentukan.

11

statis Opsional dariNullable(nilai T)

Mengembalikan Opsional yang menjelaskan nilai yang ditentukan, jika bukan nol, jika tidak mengembalikan Opsional kosong.

12

T orElse(T lainnya)

Mengembalikan nilai jika ada, jika tidak mengembalikan nilai lainnya.

13

T orElseGet(Pemasok lainnya)

Mengembalikan nilai jika ada, jika tidak memanggil yang lain dan mengembalikan hasil dari pemanggilan itu.

14

T orElseThrow(Supplier exceptionSupplier)

Mengembalikan nilai yang terkandung, jika ada, jika tidak melempar pengecualian yang akan dibuat oleh pemasok yang disediakan.

15

String toString()

Mengembalikan representasi string yang tidak kosong dari Opsional ini yang cocok untuk debugging.

Kelas ini mewarisi metode dari kelas berikut −

Contoh Opsional

Buat program Java berikut menggunakan editor pilihan Anda, misalnya, C:\> JAVA.

Java8Tester.java

Demo Langsung
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;
   }
}

Verifikasi Hasil

Kompilasi kelas menggunakan javac kompiler sebagai berikut

C:\JAVA>javac Java8Tester.java

Sekarang jalankan Java8Tester sebagai berikut

C:\JAVA>java Java8Tester

Ini harus menghasilkan output berikut

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

java

  1. Kata kunci terakhir Java
  2. Instance Java dari Operator
  3. Kelas Statis Bersarang Java
  4. Kelas Anonim Java
  5. Kelas Tunggal Jawa
  6. Refleksi Jawa
  7. Kelas Java ObjectOutputStream
  8. Java Generik
  9. Kelas File Java
  10. Java 9 - Peningkatan Kelas Opsional