Penggunaan Pilihan dalam Java 8
Kelas Pilihan dalam Java 8 ialah ciri baharu untuk mengendalikan kemungkinan nilai nol. Dalam versi Java yang lebih lama, kita perlu menggunakan pertimbangan bersyarat untuk mengelakkan pengecualian penuding nol. Dalam Java 8, kelas Pilihan menyediakan cara yang elegan dan selamat untuk mengendalikan kemungkinan nilai nol.
Kelas Pilihan ialah objek bekas, yang mungkin mengandungi nilai bukan nol atau kosong. Dengan menggunakan kelas Pilihan, kita boleh menyatakan keadaan secara eksplisit apabila nilai tertentu adalah batal dan mengelakkan pengecualian penunjuk nol.
Di bawah ini kami akan memperkenalkan penggunaan kelas Pilihan melalui contoh kod tertentu.
Objek pilihan boleh dibuat melalui kaedah statik. Kaedah yang biasa digunakan untuk mencipta objek Pilihan adalah seperti berikut:
Optional<String> emptyOptional = Optional.empty(); Optional<String> nonEmptyOptional = Optional.of("Hello World"); Optional<String> nullableOptional = Optional.ofNullable("Hello World");
Kita boleh menggunakan kaedah isPresent() untuk menentukan sama ada objek Pilihan mengandungi nilai. Jika objek Pilihan mengandungi nilai bukan nol, kaedah isPresent() akan mengembalikan benar jika tidak, ia akan mengembalikan palsu.
Optional<String> optional = Optional.ofNullable("Hello World"); if (optional.isPresent()) { System.out.println("Optional对象包含值:" + optional.get()); } else { System.out.println("Optional对象为空"); }
Kita boleh menggunakan kaedah get() untuk mendapatkan nilai objek Pilihan. Jika objek Pilihan kosong, memanggil kaedah get() akan membuang pengecualian NoSuchElementException. Oleh itu, sebelum memanggil kaedah get(), sebaiknya gunakan kaedah isPresent() untuk menilai.
Optional<String> optional = Optional.ofNullable("Hello World"); if (optional.isPresent()) { System.out.println("Optional对象包含值:" + optional.get()); } else { System.out.println("Optional对象为空"); }
Dalam sesetengah kes, kami mahu menggunakan nilai lalai sebaliknya apabila objek Pilihan kosong. Ini boleh dicapai menggunakan kaedah orElse().
Optional<String> optional = Optional.empty(); String value = optional.orElse("Default Value"); System.out.println("Optional对象的值:" + value);
Konsep pengaturcaraan berfungsi diperkenalkan di Java 8. Kami boleh memproses nilai objek Pilihan melalui ungkapan lambda.
Optional<String> optional = Optional.ofNullable("Hello World"); optional.ifPresent(value -> System.out.println("Optional对象的值:" + value));
Objek pilihan menyokong operasi rantai Kita boleh menggunakan kaedah map() untuk menukar nilai objek Pilihan.
Optional<String> optional = Optional.ofNullable("Hello World"); optional.map(value -> value.toUpperCase()) .ifPresent(value -> System.out.println("转换后的值:" + value));
Melalui contoh di atas, kita dapat melihat penggunaan kelas Pilihan dalam Java8. Kelas Pilihan boleh membantu kami mengendalikan kemungkinan nilai nol dengan lebih elegan dan mengelakkan berlakunya pengecualian penuding nol. Dalam pembangunan sebenar, penggunaan kelas Pilihan yang munasabah boleh meningkatkan kebolehbacaan dan keteguhan kod.
Atas ialah kandungan terperinci Menggunakan kelas Pilihan dalam Java8. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!