【发布时间】:2015-11-30 17:25:17
【问题描述】:
我正在寻找一种将参数 c 传递给 instanceof 的方法,因为我需要像代码中所示那样循环遍历数组,但是编译器返回错误“未知类 c”我该如何解决这个问题?
Class0 a = new Class0();
boolean bool;
Class[] array = new Class[]{Class0.class, Class1.class};
for(Class c : array){
if(a instanceof c)
bool = true;
else
bool = false;
}
我知道我可以使用 a.getClass().getSimpleName() 并检查它是否等于字符串数组中的一个元素,但我想更好地了解如何使用关键字 instanceof 以及它是如何工作的。
【问题讨论】:
-
c.getClass() 将是解决方案
-
我担心这可能是XY Problem 类型的问题。与其专注于您尝试的解决方案,不如考虑告诉我们您尝试使用此解决方案解决的潜在问题的详细信息。
-
类有
isAssignableFrom或isInstance方法。检查它们。 -
@HovercraftFullOfEels 好发现的伙伴,
标签: java oop instanceof