Rumah Java javaTutorial Jenis Primitif dan Kelas Pembungkus di Jawa

Jenis Primitif dan Kelas Pembungkus di Jawa

Nov 13, 2024 am 11:43 AM

Tipos Primitivos e Classes Invólucras (Wrapper Classes) em Java

Apabila kami memulakan pengaturcaraan di Java dan mengambil langkah pertama kami dalam paradigma Orientasi Objek (OO), adalah perkara biasa untuk menemui dua cara untuk mengisytiharkan jenis data: jenis primitif dan jenis rujukan (atau kelas pembalut). Salah satu soalan yang paling kerap ditanya oleh pemula ialah memahami mengapa terdapat dua cara untuk menyatakan jenis, contohnya, double dan Double, atau int dan Integer.

Dalam artikel ini, kami akan meneroka jenis primitif dan kelas pembalut, menerangkan perbezaannya, cara menggunakannya dan bila lebih sesuai untuk memilih satu atau yang lain.

1. Apakah Jenis Primitif?

Di Java, jenis primitif ialah jenis data asas, yang bukan objek. Ia mewakili nilai mudah dan lebih cekap dari segi penggunaan dan prestasi memori.

Java mempunyai lapan jenis primitif:

  • bait: Mewakili integer 8-bit.
  • pendek: Mewakili integer 16-bit.
  • int: Mewakili integer 32-bit.
  • panjang: Mewakili integer 64-bit.
  • terapung: Mewakili nombor titik terapung 32-bit.
  • berganda: Mewakili nombor titik terapung 64-bit.
  • char: Mewakili satu aksara Unikod (16 bit).
  • boolean: Mewakili nilai logik, seperti benar atau salah.

Jenis ini mudah, langsung dan lebih pantas untuk operasi berangka dan logik, kerana ia tidak melibatkan overhed objek, yang akan menjadi kos tambahan dari segi ingatan dan prestasi objek dalam Java (atau berorientasikan objek lain bahasa ) memperkenalkan berbanding dengan jenis data primitif.

Contoh jenis primitif dalam Java:

int numeroInteiro = 10;
double numeroDecimal = 20.5;
boolean isAtivo = true;
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

2. Apakah Kelas Pembungkus?

Kelas pembungkus, atau kelas pembungkus, ialah kelas dalam Java yang "membungkus" jenis primitif, mengubahnya menjadi objek. Setiap jenis primitif mempunyai kelas sepadan yang menyediakan kaedah dan fungsi tambahan untuk memanipulasi nilai.

Berikut ialah kelas pembalut yang sepadan dengan jenis primitif:

  • bait → Bait
  • pendek → Pendek
  • int → Integer
  • panjang → Panjang
  • terapung → Terapung
  • berganda → Berganda
  • char → Perwatakan
  • boolean → Boolean

Kelas ini berguna apabila anda memerlukan kefungsian tambahan atau apabila nilai primitif perlu dianggap sebagai objek, contohnya, apabila kami bekerja dengan koleksi seperti senarai (Senarai) atau peta (Peta), yang memerlukan objek dan bukannya jenis primitif.

Contoh menggunakan kelas pembalut:

int numeroInteiro = 10;
double numeroDecimal = 20.5;
boolean isAtivo = true;
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

3. Perbezaan Antara Jenis Primitif dan Kelas Pembungkus

Característica Tipos Primitivos Classes Invólucras
Armazenamento Diretamente no valor Armazenado como um objeto
Eficiência Mais eficientes Menos eficientes
Uso em coleções Não pode ser usado Pode ser usado (ex: List)
Valores padrão Inicializado com um valor (ex: 0 para int) Pode ser null (ausência de valor)
Métodos adicionais Não possui métodos Oferece métodos como parseInt(), valueOf(), etc.
Ciri Jenis Primitif Kelas Pembungkus Storan Secara langsung pada nilai Disimpan sebagai objek Kecekapan Lebih cekap Kurang cekap Gunakan dalam koleksi Tidak boleh digunakan Boleh digunakan (cth. Senarai) Nilai lalai Dimulakan dengan nilai (cth: 0 untuk int) Boleh batal (ketiadaan nilai) Kaedah tambahan Tiada kaedah Menawarkan kaedah seperti parseInt(), valueOf(), dsb.

4. Bila Menggunakan Jenis Primitif dan Kelas Pembungkus?

Walaupun jenis primitif lebih cekap dari segi prestasi, kelas pembalut diperlukan apabila anda memerlukan fungsi tambahan, seperti:

  • Koleksi: Apabila menggunakan koleksi seperti Senarai, Set atau Peta, yang hanya boleh menyimpan objek, anda perlu menggunakan kelas pembalut. Contoh:
int numeroInteiro = 10;
double numeroDecimal = 20.5;
boolean isAtivo = true;
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
  • Operasi Khusus: Jika anda memerlukan kaedah khusus untuk penukaran atau manipulasi, seperti Integer.parseInt(), anda harus menggunakan kelas pembalut.

5. Kesimpulan

Memahami perbezaan antara jenis primitif dan kelas pembalut adalah asas untuk mana-mana pengaturcara Java pemula, kerana ia mempengaruhi prestasi dan cara kami menangani data setiap hari. Ingat, untuk mengoptimumkan prestasi, gunakan jenis primitif apabila boleh. Walau bagaimanapun, apabila anda memerlukan kefungsian tambahan, seperti bekerja dengan koleksi atau berurusan dengan nilai nol, kelas pembalut ialah pilihan yang tepat.

Lama kelamaan, sambil anda mendalami Java, memahami konsep ini akan membantu anda menulis kod yang lebih cekap dan fleksibel.

Atas ialah kandungan terperinci Jenis Primitif dan Kelas Pembungkus di Jawa. 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

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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)

Topik panas

Tutorial Java
1655
14
Tutorial PHP
1252
29
Tutorial C#
1226
24
Adakah perisian keselamatan syarikat menyebabkan aplikasi gagal dijalankan? Bagaimana cara menyelesaikan masalah dan menyelesaikannya? Adakah perisian keselamatan syarikat menyebabkan aplikasi gagal dijalankan? Bagaimana cara menyelesaikan masalah dan menyelesaikannya? Apr 19, 2025 pm 04:51 PM

Penyelesaian masalah dan penyelesaian kepada perisian keselamatan syarikat yang menyebabkan beberapa aplikasi tidak berfungsi dengan baik. Banyak syarikat akan menggunakan perisian keselamatan untuk memastikan keselamatan rangkaian dalaman. …

Bagaimanakah saya menukar nama kepada nombor untuk melaksanakan penyortiran dan mengekalkan konsistensi dalam kumpulan? Bagaimanakah saya menukar nama kepada nombor untuk melaksanakan penyortiran dan mengekalkan konsistensi dalam kumpulan? Apr 19, 2025 pm 11:30 PM

Penyelesaian untuk menukar nama kepada nombor untuk melaksanakan penyortiran dalam banyak senario aplikasi, pengguna mungkin perlu menyusun kumpulan, terutama dalam satu ...

Bagaimana dengan elegan mendapatkan nama pemboleh ubah kelas entiti untuk membina keadaan pertanyaan pangkalan data? Bagaimana dengan elegan mendapatkan nama pemboleh ubah kelas entiti untuk membina keadaan pertanyaan pangkalan data? Apr 19, 2025 pm 11:42 PM

Apabila menggunakan Mybatis-Plus atau Rangka Kerja ORM yang lain untuk operasi pangkalan data, sering diperlukan untuk membina syarat pertanyaan berdasarkan nama atribut kelas entiti. Sekiranya anda secara manual setiap kali ...

Bagaimanakah Idea IntelliJ mengenal pasti nombor port projek boot musim bunga tanpa mengeluarkan log? Bagaimanakah Idea IntelliJ mengenal pasti nombor port projek boot musim bunga tanpa mengeluarkan log? Apr 19, 2025 pm 11:45 PM

Mula musim bunga menggunakan versi IntelliJideaultimate ...

Bagaimana untuk memudahkan isu pemetaan medan dalam dok sistem menggunakan mapstruct? Bagaimana untuk memudahkan isu pemetaan medan dalam dok sistem menggunakan mapstruct? Apr 19, 2025 pm 06:21 PM

Pemprosesan pemetaan medan dalam dok sistem sering menemui masalah yang sukar ketika melaksanakan sistem dok: bagaimana untuk memetakan medan antara muka sistem dengan berkesan ...

Bagaimana cara menukar objek Java dengan selamat ke array? Bagaimana cara menukar objek Java dengan selamat ke array? Apr 19, 2025 pm 11:33 PM

Penukaran objek dan tatasusunan Java: Perbincangan mendalam tentang risiko dan kaedah penukaran jenis cast yang betul Banyak pemula Java akan menemui penukaran objek ke dalam array ...

Platform e-dagang SKU dan Reka Bentuk Pangkalan Data SPU: Bagaimana untuk mengambil kira kedua-dua atribut yang ditakrifkan oleh pengguna dan produk yang tidak berkesudahan? Platform e-dagang SKU dan Reka Bentuk Pangkalan Data SPU: Bagaimana untuk mengambil kira kedua-dua atribut yang ditakrifkan oleh pengguna dan produk yang tidak berkesudahan? Apr 19, 2025 pm 11:27 PM

Penjelasan terperinci mengenai reka bentuk jadual SKU dan SPU di platform e-dagang Artikel ini akan membincangkan isu reka bentuk pangkalan data SKU dan SPU dalam platform e-dagang, terutamanya bagaimana menangani jualan yang ditentukan pengguna ...

Bagaimana menggunakan penyelesaian cache Redis untuk merealisasikan keperluan senarai kedudukan produk dengan cekap? Bagaimana menggunakan penyelesaian cache Redis untuk merealisasikan keperluan senarai kedudukan produk dengan cekap? Apr 19, 2025 pm 11:36 PM

Bagaimanakah penyelesaian caching Redis menyedari keperluan senarai kedudukan produk? Semasa proses pembangunan, kita sering perlu menangani keperluan kedudukan, seperti memaparkan ...

See all articles