假设我有一个名为 的对象thisObject
,它可能是一个 int、String、Object 等,或者是此类类的数组。我希望将生成的类存储在一个Class
名为thisObjectArrayClass
.
这不会编译,但希望能解释我在找什么:
switch(thisObject.class) {
case int.class:
int[] tempObject;
thisObjectArrayClass = tempObject.class;
break;
case float.class:
float[] tempObject;
thisObjectArrayClass = tempObject.class;
break;
case int[].class:
int[][] tempObject;
thisObjectArrayClass = tempObject.class;
break;
}
这样做的问题是它依赖于 switch/case 语句,这显然是不可接受的。我尝试使用反射来做到这一点失败了,但我是 Java 新手,所以也许我做错了什么。如何做到这一点?