有代码:
List<Integer> al = new ArrayList<>() ;
Iterator iterator = al.iterator();
System.out.println(iterator.getClass().getName());
Run Code Online (Sandbox Code Playgroud)
我得到:
java.util.ArrayList$Itr
Run Code Online (Sandbox Code Playgroud)
这是什么意思:“ ArrayList $ Itr”?
我在这一行中得到了什么Iterator实现?
Iterator iterator = al.iterator();
Run Code Online (Sandbox Code Playgroud)
在ArrayList类内部,定义了以下内部类:
private class Itr implements Iterator<E> {...}
Run Code Online (Sandbox Code Playgroud)
al.iterator()返回该类的实例,其全名是java.util.ArrayList$Itr。
public Iterator<E> iterator() {
return new Itr();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
126 次 |
| 最近记录: |