Java Academy · Pelajaran

Jenis primitif berbanding pembalut

Integer, Double, Boolean dan yang lain

Pelajaran 1 daripada 413 langkah

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, long untuk nombor bulat
  • float, double untuk nombor perpuluhan
  • char untuk satu aksara
  • boolean untuk 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:

  • int menjadi Integer
  • char menjadi Character
  • boolean menjadi Boolean, double menjadi 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 Integer dan Double
  • Pembalut ialah objek, boleh bernilai null dan sesuai digunakan dalam koleksi
  • Primitif lebih pantas dan ringan, jadi gunakannya sebagai pilihan lalai
  • Kelas pembalut turut menyediakan pemalar dan kaedah pembantu yang berguna
Percuma untuk bermula

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

  1. Jenis primitif berbanding pembalut
  2. Autoboxing dan unboxing
  3. Penghuraian dan Valueof
  4. Perangkap autoboxing
← Kembali ke Java Academy