【发布时间】:2017-05-21 10:24:22
【问题描述】:
public boolean contains(Object o) {
for (E x : this)
if (x.equals(o))
return true;
return false;
}
谁能告诉我这段代码中的“this”是什么意思?没有这个我可以写吗?怎么写?
【问题讨论】:
-
简单地说,增强的 for 循环中的第二个参数(
:之后)是任何Iterable<E>。在这种情况下,您当前的实例(#contains方法中的this)是Iterable<E>的实例。 -
这里可能有2个问题-what the
E x : ...for-loop does,然后是what thethisrefers to(以及如何在没有this的情况下重写它,如果你理解代码应该会很明显) -
尴尬。我想作为副本关闭,但是 2010 年的候选副本没有接受的答案...:/ .