Rumah  >  Artikel  >  Java  >  Bagaimana untuk Menentukan sama ada Objek adalah Jenis Primitif di Jawa?

Bagaimana untuk Menentukan sama ada Objek adalah Jenis Primitif di Jawa?

DDD
DDDasal
2024-10-31 21:15:29312semak imbas

How to Determine if an Object is of Primitive Type in Java?

Menentukan sama ada Objek adalah Jenis Primitif

Apabila bekerja dengan tatasusunan objek, mungkin perlu untuk menentukan objek yang jenis primitif . Semasa cuba menggunakan kaedah Class.isPrimitive(), sesetengah pengguna mungkin menemui keputusan palsu kerana auto-tinju.

Memahami Auto-Tinju

Auto-tinju ialah ciri dalam Java yang secara automatik menukar nilai primitif kepada kelas pembalut yang sepadan apabila digunakan sebagai objek. Sebagai contoh, int primitif ditukar secara automatik kepada kelas pembalutnya, Integer.

Pendekatan Betul

Untuk menentukan dengan tepat sama ada objek adalah jenis primitif, adalah perlu untuk menyemak sama ada jenisnya ialah "pembungkus untuk primitif" dan bukannya menggunakan Class.isPrimitive(). Ini boleh dicapai dengan membandingkan kelas objek dengan set kelas pembalut yang diketahui.

Menyesuaikan untuk Jenis Tertentu

Coretan kod berikut termasuk kaedah utiliti, isWrapperType, yang boleh digunakan untuk menentukan sama ada jenis objek ialah jenis pembalut. Ia membandingkan kelas objek dengan set kelas pembalut yang telah ditetapkan dan mengembalikan hasil boolean.

<code class="java">import java.util.*;

public class Test {
    public static void main(String[] args) {
        System.out.println(isWrapperType(String.class));
        System.out.println(isWrapperType(Integer.class));
    }

    private static final Set<Class<?>> WRAPPER_TYPES = getWrapperTypes();

    public static boolean isWrapperType(Class<?> clazz) {
        return WRAPPER_TYPES.contains(clazz);
    }

    private static Set<Class<?>> getWrapperTypes() {
        Set<Class<?>> ret = new HashSet<>();
        ret.add(Boolean.class);
        ret.add(Character.class);
        ...
        return ret;
    }
}</code>

Kesimpulan

Dengan menggunakan pendekatan tersuai ini, pembangun boleh menentukan dengan tepat sama ada objek dalam tatasusunan Object[] adalah daripada jenis primitif, dengan mengambil kira kesan auto-tinju.

Atas ialah kandungan terperinci Bagaimana untuk Menentukan sama ada Objek adalah Jenis Primitif di Jawa?. 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