Rumah Java javaTutorial Inferens jenis pembolehubah tempatan dalam Java 10: Cara menggunakan kata kunci var dalam ungkapan lambda

Inferens jenis pembolehubah tempatan dalam Java 10: Cara menggunakan kata kunci var dalam ungkapan lambda

Aug 02, 2023 pm 04:25 PM
pembolehubah tempatan jenis inferens ungkapan lambda

Inferens jenis pembolehubah tempatan dalam Java 10: Cara menggunakan kata kunci var dalam ungkapan lambda

Petikan:
Java 10 memperkenalkan ciri baharu inferens jenis pembolehubah tempatan, yang membolehkan kami menggunakan kata kunci var semasa mengisytiharkan pembolehubah tempatan untuk membuat kesimpulan jenisnya. Walaupun ciri ini mungkin tidak diperlukan dalam kebanyakan kes, dalam beberapa kes ia boleh meningkatkan kebolehbacaan dan kesederhanaan kod. Artikel ini akan menumpukan pada cara menggunakan kata kunci var dalam ungkapan lambda untuk melaksanakan inferens jenis pembolehubah setempat.

Apakah inferens jenis pembolehubah tempatan?
Dalam versi Java yang lebih awal, kami perlu menyatakan secara eksplisit jenis pembolehubah tempatan semasa mengisytiharkannya. Contohnya:

String name = "John";
int age = 25;
Salin selepas log masuk

Walau bagaimanapun, bermula dari Java 10, kita boleh menggunakan kata kunci var untuk membenarkan pengkompil secara automatik membuat kesimpulan jenis pembolehubah berdasarkan ungkapan di sebelah kanan tanpa perlu menyatakannya secara eksplisit. Contohnya:

var name = "John";
var age = 25;
Salin selepas log masuk

Dalam contoh ini, pengkompil akan membuat kesimpulan bahawa jenis nama ialah String dan jenis umur adalah int berdasarkan ungkapan di sebelah kanan.

Faedah menggunakan kata kunci var dalam ungkapan lambda:
Apabila menggunakan ungkapan lambda, kami biasanya mencipta contoh antara muka berfungsi untuk dihantar ke kaedah lain. Menggunakan kata kunci var menjimatkan masalah untuk menentukan jenis parameter semasa membuat tika ungkapan lambda. Dengan cara ini, kita boleh lebih menumpukan pada logik ungkapan lambda tanpa memberi terlalu banyak perhatian kepada pengisytiharan jenis parameter.

Kod sampel:
Andaikan kita mempunyai kelas yang dipanggil Person, yang mengandungi dua atribut: nama dan umur:

class Person {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public int getAge() {
        return age;
    }
}
Salin selepas log masuk

Sekarang, kita mahu mengisih berdasarkan atribut nama objek Orang. Sebelum Java 10, kami perlu menentukan jenis generik Comparator secara manual:

List<Person> persons = // 初始化Person对象列表

Collections.sort(persons, new Comparator<Person>() {
    @Override
    public int compare(Person p1, Person p2) {
        return p1.getName().compareTo(p2.getName());
    }
});
Salin selepas log masuk

Dalam contoh ini, kami mencipta kelas dalaman tanpa nama untuk melaksanakan antara muka Comparator dan mengatasi kaedah perbandingan di dalamnya. Walau bagaimanapun, kata kunci var dalam Java 10 menjadikan kod lebih bersih:

List<Person> persons = // 初始化Person对象列表

Collections.sort(persons, (var p1, var p2) -> {
    return p1.getName().compareTo(p2.getName());
});
Salin selepas log masuk

Dalam contoh ini, kami menggunakan kata kunci var untuk membuat kesimpulan jenis p1 dan p2 tanpa perlu mengisytiharkan jenisnya secara eksplisit sebagai Orang.

Kesimpulan:
Inferens jenis pembolehubah tempatan Java 10 ialah ciri berkuasa yang membolehkan kami menulis kod yang lebih bersih dan lebih mudah dibaca. Menggunakan kata kunci var dalam ungkapan lambda membolehkan kita menumpukan pada pelaksanaan logik tanpa perlu memberi terlalu banyak perhatian kepada pengisytiharan jenis parameter. Sudah tentu, walaupun ciri ini boleh menjadi sangat berguna dalam beberapa situasi, kami masih perlu menggunakannya dengan berhati-hati untuk memastikan kebolehselenggaraan dan kebolehbacaan kod.

Bahan rujukan:

  • Dokumentasi rasmi Oracle: https://docs.oracle.com/en/java/javase/10/language/local-variable-type-inference.html
  • Tutorial ungkapan Lambda Java: https : //www.javatpoint.com/java-lambda-expressions

Atas ialah kandungan terperinci Inferens jenis pembolehubah tempatan dalam Java 10: Cara menggunakan kata kunci var dalam ungkapan lambda. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah perbezaan antara pembolehubah tempatan dan pembolehubah global bagi fungsi C++? Apakah perbezaan antara pembolehubah tempatan dan pembolehubah global bagi fungsi C++? Apr 19, 2024 pm 03:42 PM

Perbezaan antara pembolehubah tempatan C++ dan pembolehubah global: Keterlihatan: Pembolehubah setempat dihadkan kepada fungsi penentu, manakala pembolehubah global boleh dilihat sepanjang program. Peruntukan memori: pembolehubah tempatan diperuntukkan pada tindanan, manakala pembolehubah global diperuntukkan dalam kawasan data global. Skop: Pembolehubah tempatan berada dalam fungsi, manakala pembolehubah global berada di seluruh program. Permulaan: Pembolehubah tempatan dimulakan apabila fungsi dipanggil, manakala pembolehubah global dimulakan apabila program bermula. Rekreasi: Pembolehubah tempatan dicipta semula pada setiap panggilan fungsi, manakala pembolehubah global dibuat hanya apabila program bermula.

Menguasai pengaturcaraan berfungsi dan ungkapan Lambda dalam bahasa Go Menguasai pengaturcaraan berfungsi dan ungkapan Lambda dalam bahasa Go Nov 30, 2023 am 10:46 AM

Dalam dunia pengaturcaraan kontemporari, Pengaturcaraan Fungsian (FP) secara beransur-ansur menjadi paradigma pengaturcaraan yang popular. Ia menekankan penggunaan fungsi sebagai blok binaan asas untuk membina program, dan menganggap proses pengiraan sebagai pemindahan dan penukaran berterusan antara fungsi. Dalam beberapa tahun kebelakangan ini, bahasa Go (juga dikenali sebagai Golang) secara beransur-ansur telah digunakan secara meluas dalam pelbagai bidang kerana kesederhanaan, kecekapan, keselamatan serentak dan ciri-ciri lain. Walaupun bahasa Go itu sendiri bukanlah bahasa pengaturcaraan yang berfungsi semata-mata, ia menyediakan kefungsian yang mencukupi.

Bagaimana untuk melakukan pengaturcaraan berfungsi dengan PHP Bagaimana untuk melakukan pengaturcaraan berfungsi dengan PHP Jun 06, 2023 am 08:21 AM

PHP ialah bahasa sebelah pelayan yang digunakan secara meluas Salah satu sebab mengapa ramai pembangun web suka menggunakan PHP ialah perpustakaan fungsinya yang kaya dan sintaks fungsi yang ringkas dan mudah digunakan. Pengaturcaraan fungsional ialah paradigma pengaturcaraan yang merangkum data dan tingkah laku dengan baik, menjadikan kod lebih modular dan lebih mudah untuk diselenggara dan diuji. Dalam artikel ini, kami akan memperkenalkan cara menggunakan PHP untuk pengaturcaraan berfungsi. Asas Pengaturcaraan Fungsional Idea teras pengaturcaraan berfungsi adalah untuk menganggap fungsi sebagai warga kelas pertama Fungsi itu sendiri boleh diluluskan, dikembalikan, dan terdiri seperti pembolehubah.

Ralat sintaks C++: Apabila fungsi mengembalikan penunjuk atau rujukan, ia tidak boleh mengembalikan pembolehubah tempatan atau objek sementara. Apa yang perlu saya lakukan? Ralat sintaks C++: Apabila fungsi mengembalikan penunjuk atau rujukan, ia tidak boleh mengembalikan pembolehubah tempatan atau objek sementara. Apa yang perlu saya lakukan? Aug 22, 2023 am 09:22 AM

C++ ialah bahasa pengaturcaraan berorientasikan objek, dan fleksibiliti serta kuasanya sering memberikan bantuan yang besar kepada pengaturcara. Walau bagaimanapun, dengan tepat kerana fleksibilitinya, sukar untuk mengelakkan pelbagai ralat kecil semasa pengaturcaraan. Salah satu kesilapan yang paling biasa ialah apabila fungsi mengembalikan penunjuk atau rujukan, ia tidak dapat mengembalikan pembolehubah tempatan atau objek sementara. Jadi bagaimana untuk menangani masalah ini? Artikel ini akan memperkenalkan kandungan yang berkaitan secara terperinci. Punca masalah ialah dalam bahasa C++, pembolehubah tempatan dan objek sementara diperuntukkan secara dinamik semasa menjalankan fungsi. Apabila fungsi tamat, pembolehubah tempatan ini dan sementara

Bagaimanakah jenis nilai pulangan fungsi PHP boleh ditentukan? Bagaimanakah jenis nilai pulangan fungsi PHP boleh ditentukan? Apr 15, 2024 pm 10:51 PM

Kaedah untuk menentukan jenis nilai pulangan fungsi PHP termasuk: 1. Menggunakan pengisytiharan taip 2. Membuat kesimpulan berdasarkan definisi fungsi 3. Menggunakan fungsi gettype() 4. Menggunakan perpustakaan pihak ketiga (seperti Psalm dan PHPStan) .

Analisis persaingan data pembolehubah global dan pembolehubah tempatan fungsi Golang Analisis persaingan data pembolehubah global dan pembolehubah tempatan fungsi Golang May 21, 2023 am 08:19 AM

Golang ialah bahasa pengaturcaraan yang ditaip kuat dengan ciri-ciri kecekapan, kesederhanaan, dan keselarasan, jadi ia secara beransur-ansur digemari oleh semakin ramai pembangun. Dalam pembangunan Golang, pembolehubah global dan pembolehubah tempatan fungsi sering melibatkan isu persaingan data. Artikel ini akan menganalisis masalah persaingan data pembolehubah global dan pembolehubah tempatan dalam fungsi Golang dari perspektif pengekodan sebenar. 1. Persaingan data untuk pembolehubah global Pembolehubah global Golang boleh diakses dalam semua fungsi, jadi jika reka bentuk dan pengekodan yang ketat tidak dijalankan

Kaedah pengaturcaraan serentak menggunakan ungkapan Lambda Kaedah pengaturcaraan serentak menggunakan ungkapan Lambda Aug 20, 2023 am 08:17 AM

Tambahan penting kepada JavaSE8 ialah ciri ekspresi lambda. Gunakan ungkapan untuk menyatakan antara muka kaedah dengan jelas dan padat. Perpustakaan koleksi sangat membantu. Koleksi boleh diulang, ditapis dan data diekstrak untuk tujuan yang berguna. Untuk melaksanakan antara muka berfungsi, ungkapan lambda digunakan secara meluas. Ia menjimatkan banyak kod. Ungkapan Lambda membolehkan kami menyediakan pelaksanaan tanpa mentakrifkan semula kaedah. Di sini sahaja kod pelaksanaan dibentuk dengan menulis kod. Pengkompil tidak mencipta fail .class kerana ungkapan Javalambda dianggap sebagai fungsi. Antara muka fungsional @FunctionalInterface ialah anotasi Java yang mengisytiharkan antara muka sebagai antara muka berfungsi.

Inferens jenis pembolehubah tempatan dalam Java 10: Cara memudahkan kod anda menggunakan kata kunci var Inferens jenis pembolehubah tempatan dalam Java 10: Cara memudahkan kod anda menggunakan kata kunci var Jul 29, 2023 pm 07:32 PM

Inferens jenis pembolehubah tempatan dalam Java10: Cara menggunakan kata kunci var untuk memudahkan kod Pengenalan: Dalam Java10, ciri inferens jenis pembolehubah tempatan diperkenalkan Dengan menggunakan kata kunci var, proses penulisan kod boleh dipermudahkan. Artikel ini akan memperkenalkan penggunaan kata kunci var dan menunjukkan kesannya untuk memudahkan kod melalui kod sampel. 1. Apakah inferens jenis pembolehubah tempatan? Inferens jenis pembolehubah tempatan bermakna apabila mengisytiharkan pembolehubah tempatan, anda boleh menggunakan kata kunci var dan bukannya perisytiharan jenis eksplisit. Penyusun akan menyatakan

See all articles