Rumah >Java >javaTutorial >Cara menggunakan fungsi Pilihan dalam Java untuk pengendalian nilai nol

Cara menggunakan fungsi Pilihan dalam Java untuk pengendalian nilai nol

王林
王林asal
2023-06-26 17:03:461591semak imbas

Java ialah bahasa pengaturcaraan yang sangat popular yang menyediakan banyak fungsi terbina dalam untuk meningkatkan kecekapan pembangunan. Antaranya, fungsi Pilihan boleh membantu pengaturcara menangani masalah nilai nol dengan lebih mudah. Dalam artikel ini, kami akan menerangkan cara menggunakan fungsi Pilihan dalam Java untuk pengendalian nilai nol.

Apakah fungsi Pilihan?

Dalam Java8, Pilihan ialah kelas yang mewakili bekas yang mungkin kosong. Jika objek Pilihan mengandungi nilai bukan nol, kaedah isPresent() akan mengembalikan benar, jika tidak ia akan mengembalikan palsu. Kelas Pilihan menyediakan banyak kaedah utiliti dan antara muka berfungsi untuk menjadikan pemprosesan nilai nol lebih mudah.

Bagaimana untuk menggunakan fungsi Pilihan?

Pertama, kita perlu memahami cara membuat objek Pilihan. Kita boleh menggunakan mana-mana daripada tiga kaedah statik(), ofNullable(), dan empty() untuk mencipta objek Pilihan. Antaranya, kaedah of() hanya boleh menerima nilai bukan nol Jika nilai nol dimasukkan, kaedah ofNullable() boleh menerima sebarang jenis nilai, termasuk nilai nol diluluskan, ia akan mengembalikan Objek Pilihan kosong kaedah kosong() mengembalikan objek Pilihan kosong.

Optional<String> name = Optional.of("张三"); //创建一个包含非空值的Optional对象
Optional<String> emptyName = Optional.empty();//创建一个空的Optional对象
Optional<String> anotherName = Optional.ofNullable(null);//创建一个包含null值的Optional对象

Kita boleh menggunakan kaedah get() untuk mendapatkan nilai dalam objek Pilihan. Jika nilai dalam objek Pilihan kosong, kaedah get() akan membuang NoSuchElementException. Oleh itu, sebelum menggunakan kaedah get(), sebaiknya gunakan kaedah isPresent() untuk membuat pertimbangan bagi memastikan nilai dalam objek Pilihan tidak kosong.

Optional<String> name = Optional.of("张三"); 
if(name.isPresent()){
    String n = name.get();
    System.out.println(n); //输出"张三"
}

Jika nilai dalam objek Pilihan kosong, kita juga boleh menggunakan kaedah orElse() untuk menetapkan nilai lalai. Apabila nilai dalam objek Pilihan kosong, kaedah orElse() akan mengembalikan nilai lalai yang kami tetapkan.

Optional<String> name = Optional.empty(); 
String n = name.orElse("未知"); //设置默认值为"未知"
System.out.println(n); //输出"未知"

Selain kaedah orElse(), kita juga boleh menggunakan kaedah orElseGet() dan kaedah orElseThrow(). Kaedah ini juga digunakan untuk menangani masalah nilai nol dalam objek Pilihan.

Kaedah orElseGet() menerima antara muka Pembekal untuk menjana nilai lalai, dan bukannya menghantar nilai lalai yang telah dijana seperti kaedah orElse(). Kaedah

Optional<String> name = Optional.empty(); 
String n = name.orElseGet(() -> "未知"); //使用Supplier接口生成默认值
System.out.println(n); //输出"未知"

orElseThrow() digunakan untuk mengendalikan pengecualian yang akan dilemparkan apabila nilai dalam objek Pilihan kosong.

Optional<String> name = Optional.empty(); 
String n = name.orElseThrow(() -> new RuntimeException("值为空")); //抛出RuntimeException异常

Selain kaedah di atas, kelas Pilihan juga menyediakan banyak kaedah lain, seperti map(), flatMap(), filter(), dsb., yang boleh membantu kami mengendalikan nilai nol dalam objek Pilihan lebih selesa.

Optional<String> name = Optional.of("张三"); 
Optional<String> capitalizedName = name.map((value) -> value.toUpperCase()); //使用map()方法将值转换为大写
System.out.println(capitalizedName.get()); //输出"张三"

Ringkasan

Dalam artikel ini, kami memperkenalkan kelas Pilihan dalam Java dan cara menggunakan fungsi Pilihan untuk pengendalian nilai nol. Menggunakan fungsi Pilihan boleh menjadikan kod kami pengaturcaraan lebih defensif dan mengelakkan ketidakpastian yang disebabkan oleh nilai nol. Sudah tentu, kita juga perlu berhati-hati apabila menggunakan kelas Pilihan untuk mengelak daripada menggunakannya sebagai jenis data universal, jika tidak, kod itu akan menjadi kembung tanpa perlu.

Atas ialah kandungan terperinci Cara menggunakan fungsi Pilihan dalam Java untuk pengendalian nilai nol. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn