Über Java: Holen Sie sich "String []. class" aus "String.class". Was ist, wenn "String.class" ein "Laufzeit-Typ" ist? [Duplikat]

Diese Frage hat hier bereits eine Antwort:

Abrufen der Array-Klasse eines Komponententyps 4 Antworten

Hier ist eine VariableClass<?> cls, jetzt will ich noch eins bekommenArray Class Object welcher Komponententyp istcls.

Zum Beispiel, wenncls=String.class , Ich möchte bekommenString[].class; obcls=int.class, Ich möchte bekommenint[].class, was soll ich machen?

Sie sehen, es ist ganz einfach zu bekommenString.class vonString[].class:

Class<?> arrayCls = String[].class;
if(arrayCls.isArray()){
    Class<?> cls = arrayCls.getComponentType();
}

Aber ich finde keinen einfachen Weg, das Gegenteil zu tun.

Hier ist eine mögliche Lösung:

Class<?> clazz = String.class;
Class<?> arrayClass = Array.newInstance(clazz,0).getClass();

Gibt es eine Möglichkeit, dies bitte zu tun?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage