Kelas pilihan dalam Java 8: Cara menangani kemungkinan nilai nol
Dalam pembangunan perisian, kita selalunya perlu menangani pelbagai kemungkinan nilai nol. Kaedah pemprosesan tradisional adalah untuk menilai sama ada nilai itu kosong melalui penghakiman bersyarat, dan kemudian melaksanakan pemprosesan yang sepadan. Kaedah ini bukan sahaja menyusahkan, tetapi juga mudah membawa kepada kod yang panjang dan kebolehbacaan yang rendah. Untuk menyelesaikan masalah ini, Java 8 memperkenalkan kelas baharu Pilihan, yang menyediakan cara yang elegan untuk mengendalikan nilai yang berpotensi nol.
Kelas Pilihan ialah kelas pembalut yang boleh membalut sebarang jenis nilai dan boleh menggunakan satu siri kaedah untuk memproses nilai ini. Mari lihat beberapa contoh penggunaan kelas Pilihan. . Contohnya:
String name = "John"; Optional<String> optionalName = Optional.of(name);
String name = null; Optional<String> optionalName = Optional.ofNullable(name);
Kita boleh menggunakan kaedah isPresent() untuk menentukan sama ada objek Pilihan kosong. Mengembalikan benar jika nilai dalam objek Pilihan wujud; Contohnya:
Optional<String> optionalName = Optional.of("John"); boolean isPresent = optionalName.isPresent();
Jika nilai dalam objek Pilihan kosong, kita boleh menggunakan kaedah orElse() atau orElseGet() untuk menetapkan nilai lalai. Dengan cara ini, apabila objek Pilihan kosong, nilai lalai akan dikembalikan. Contohnya:
Optional<String> optionalName = Optional.ofNullable(null); String name = optionalName.orElse("Default");
Optional<String> optionalName = Optional.ofNullable(null); String name = optionalName.orElseGet(() -> "Default");
Kita boleh menggunakan kaedah map() dan flatMap() untuk melaksanakan operasi dalam objek Pilihan dan mengembalikan objek Pilihan baharu. Contohnya:
Optional<String> optionalName = Optional.of("John"); optionalName.map(String::toUpperCase);
Optional<String> optionalName = Optional.of("John"); optionalName.flatMap(name -> Optional.of(name.toUpperCase()));
Kita boleh menggunakan kaedah orElseThrow() untuk melontar pengecualian apabila objek Pilihan kosong. Contohnya:
Optional<String> optionalName = Optional.ofNullable(null); optionalName.orElseThrow(IllegalStateException::new);
Kelas Pilihan dalam Java 8 menyediakan kami cara yang elegan untuk mengendalikan kemungkinan nilai nol. Ia boleh mengelakkan pertimbangan bersyarat yang menyusahkan dan menjadikan kod lebih ringkas, jelas dan boleh dibaca. Apabila menggunakan kelas Pilihan, anda perlu memberi perhatian kepada lontaran dan pengendalian pengecualian penuding nol, dan pilih kaedah yang sesuai untuk memenuhi keperluan yang berbeza.
Saya harap artikel ini akan membantu anda memahami kelas Pilihan dalam Java 8!
Atas ialah kandungan terperinci Kelas pilihan dalam Java 8: Cara mengendalikan kemungkinan nilai nol. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!