Heim >Java >javaLernprogramm >Wie kann festgestellt werden, ob ein Objekt in einem Array ein Wrapper-Typ für ein Primitiv ist?

Wie kann festgestellt werden, ob ein Objekt in einem Array ein Wrapper-Typ für ein Primitiv ist?

Linda Hamilton
Linda HamiltonOriginal
2024-11-01 10:36:30823Durchsuche

How to Determine if an Object in an Array is a Wrapper Type for a Primitive?

So identifizieren Sie primitive Typen in einem Objektarray

In Java wird mit Class.isPrimitive() ermittelt, ob ein Objekt vom primitiven Typ ist. kann irreführend sein. Dies liegt daran, dass Objekte in einem Array Verweise auf die tatsächlichen Werte sind.

Um genau zu bestimmen, ob ein Objekt primitiv ist, müssen wir prüfen, ob sein Typ ein Wrapper für einen primitiven Typ ist. Das JDK stellt hierfür keine integrierte Methode bereit, aber wir können eine benutzerdefinierte Methode erstellen:

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

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

    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);
        ret.add(Byte.class);
        ret.add(Short.class);
        ret.add(Integer.class);
        ret.add(Long.class);
        ret.add(Float.class);
        ret.add(Double.class);
        ret.add(Void.class);
        return ret;
    }
}</code>

Diese benutzerdefinierte Methode, isWrapperType(), erstellt einen Satz primitiver Wrapper-Typen und prüft, ob die Die angegebene Klasse entspricht einer von ihnen. Dieser Ansatz gewährleistet eine genaue Identifizierung primitiver Typen innerhalb eines Object[]-Arrays.

Das obige ist der detaillierte Inhalt vonWie kann festgestellt werden, ob ein Objekt in einem Array ein Wrapper-Typ für ein Primitiv ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn