可能重复:
Java:冒号 (:) 运算符有什么作用?
for (CreditCard cc : credit1)
&
if (index instanceof RewardCard)
“:”和instanceof一样吗?所以我可以使用?
if (index : RewardCard)
或者
for (CreditCard cc instanceof credit1)
如果没有,有人可以解释“:”是什么意思吗?
可能重复:
Java:冒号 (:) 运算符有什么作用?
for (CreditCard cc : credit1)
&
if (index instanceof RewardCard)
“:”和instanceof一样吗?所以我可以使用?
if (index : RewardCard)
或者
for (CreditCard cc instanceof credit1)
如果没有,有人可以解释“:”是什么意思吗?
它们不一样:instanceof
检查 Object 的实例是否属于某种类型。:
in是循环列表(循环)的for (CreditCard cc : credit1)
一种简短方法。foreach
一点也不,它们完全不同。
for (.. : ..)
是一个for-each 循环instanceof
检查运行时类型for (CreditCard cc : credit1)
它的意思是
for each CreditCard IN credit1, lets call it cc and use it somehow
并且只要它与为给定集合声明的类相同,您就可以使用类 CreditCard。
List<Parent> list = new ArrayList<Parent>();
list.add(new Parent());
list.add(new Child());
for (Child parent : list) { // compilation error! - Type mismatch: cannot convert from element type Parent to Child
System.out.println(parent);
}
所以instanceof
和for (SomeType obj : SomeCollection)
甚至不相似