Jenis primitif berbanding pembalut
Integer, Double, Boolean dan yang lain
Jenis primitif berbanding pembalut ialah pelajaran Java Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Java Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Java Academy merangkumi sejumlah 4 pelajaran.
Dua Dunia Nilai
Java mempunyai jenis primitif seperti int, double dan boolean yang menyimpan nilai mentah secara langsung. Java juga mempunyai kelas pembalut seperti Integer, Double dan Boolean yang membungkus nilai tersebut di dalam objek.
Primitif adalah pantas dan ringan. Pembalut pula ialah objek lengkap yang boleh berada dalam koleksi dan boleh bernilai null.
Lapan Primitif
Java mentakrifkan tepat lapan jenis primitif:
byte,short,int,longuntuk nombor bulatfloat,doubleuntuk nombor perpuluhancharuntuk satu aksarabooleanuntuk benar atau palsu
Setiap satunya mempunyai kelas pembalut yang sepadan dalam pakej java.lang.
Nama Pembalut yang Sepadan
Kebanyakan nama pembalut hanya menggunakan huruf besar pada nama primitif, tetapi terdapat dua pengecualian:
intmenjadi Integercharmenjadi Characterbooleanmenjadi Boolean,doublemenjadi Double, dan seterusnya
Mari kita paparkan beberapa pembalut.
public class Main {
public static void main(String[] args) {
Integer count = 42;
Double price = 9.99;
Boolean active = true;
Character grade = 'A';
System.out.println(count);
System.out.println(price);
System.out.println(active);
System.out.println(grade);
}
}Pembalut ialah Objek
Primitif menyimpan satu nilai. Pembalut ialah rujukan objek, jadi ia boleh merujuk kepada tiada apa-apa dengan null.
Hal ini menjadikan pembalut berguna apabila sesuatu nilai mungkin tiada, seperti lajur pangkalan data yang membenarkan NULL.
public class Main {
public static void main(String[] args) {
Integer missing = null;
int present = 5;
System.out.println(missing);
System.out.println(present);
}
}Pemalar Berguna
Kelas pembalut menyediakan pemalar yang berguna. Integer.MAX_VALUE dan Integer.MIN_VALUE memberikan nilai int yang terbesar dan terkecil.
Ini jauh lebih mudah daripada menghafal nombor tersebut sendiri.
public class Main {
public static void main(String[] args) {
System.out.println(Integer.MAX_VALUE);
System.out.println(Integer.MIN_VALUE);
System.out.println(Long.MAX_VALUE);
}
}Kaedah Pembantu
Kelas pembalut juga merupakan himpunan kaedah pembantu statik. Contohnya, Integer.toBinaryString memaparkan nombor dalam asas 2, manakala Integer.max mengembalikan nilai yang lebih besar antara dua nilai.
public class Main {
public static void main(String[] args) {
System.out.println(Integer.toBinaryString(10));
System.out.println(Integer.max(7, 3));
System.out.println(Integer.toHexString(255));
}
}Mengapa Koleksi Memerlukan Pembalut
Generik Java hanya berfungsi dengan objek, bukan primitif. Anda tidak boleh menulis List<int>.
Sebaliknya, anda menggunakan List<Integer>. Pembalut menjadikan nilai primitif sesuai dengan dunia objek yang diperlukan oleh koleksi.
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(10);
numbers.add(20);
System.out.println(numbers);
}
}Membandingkan Nilai Pembalut
Untuk membandingkan nilai berangka di dalam dua pembalut, gunakan .equals() atau .compareTo(), bukan operator matematik pada objek itu sendiri.
compareTo mengembalikan nombor negatif, sifar atau nombor positif.
public class Main {
public static void main(String[] args) {
Integer a = 100;
Integer b = 200;
System.out.println(a.equals(b));
System.out.println(a.compareTo(b));
}
}Memori dan Prestasi
Primitif menggunakan kurang memori dan berjalan lebih pantas kerana tiada beban tambahan objek. Satu int hanya terdiri daripada 4 bait data mentah.
Objek pembalut membawa maklumat pengepala tambahan. Untuk gelung yang melibatkan berjuta-juta nilai, utamakan primitif.
Nilai Lalai Berbeza
Medan primitif yang belum dimulakan menggunakan nilai lalai yang menyerupai sifar: int ialah 0, manakala boolean ialah palsu.
Medan pembalut yang belum dimulakan menggunakan null sebagai nilai lalai. Perbezaan ini penting apabila anda cuba menggunakan nilai tersebut kemudian.
public class Main {
static int primitiveField;
static Integer wrapperField;
public static void main(String[] args) {
System.out.println(primitiveField);
System.out.println(wrapperField);
}
}Memilih Antaranya
Peraturan mudah: gunakan primitif secara lalai demi prestasi dan kejelasan. Tukar kepada pembalut apabila anda memerlukan elemen koleksi, jenis generik atau keupayaan untuk mewakili nilai yang tiada dengan null.
Semakan Ringkas
Uji pemahaman anda tentang primitif dan pembalut.
Ringkasan
Anda telah mempelajari perbezaan antara primitif dengan pembalut:
- Lapan primitif dipadankan dengan lapan kelas pembalut seperti
IntegerdanDouble - Pembalut ialah objek, boleh bernilai
nulldan sesuai digunakan dalam koleksi - Primitif lebih pantas dan ringan, jadi gunakannya sebagai pilihan lalai
- Kelas pembalut turut menyediakan pemalar dan kaedah pembantu yang berguna
Pelajari Java dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 104
- Pelajaran
- 374
Soalan Lazim
Adakah pelajaran “Jenis primitif berbanding pembalut” percuma?
Ya — teks penuh “Jenis primitif berbanding pembalut” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Java Academy, tingkat taraf kepada CoddyKit PRO. Kursus Java Academy merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Jenis primitif berbanding pembalut”?
Integer, Double, Boolean dan yang lain Anda berlatih Java Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Java Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Java Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.
Berapa lamakah pelajaran “Jenis primitif berbanding pembalut” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Java Academy ini?
Ya. Setiap pelajaran Java Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Jenis primitif berbanding pembalut
- Autoboxing dan unboxing
- Penghuraian dan Valueof
- Perangkap autoboxing