Java的迭代器
无论是哪种容器,你都得有办法既能放东西进去,也能拿东西出来。毕竟,容器的主要任务就是存放对象。ArrayList的add()就是用来放东西的,而get()则是把对象拿出来的办法。ArrayList很灵活,你可以随时提取任何东西,并且换一个下标,马上就能选择另一个元素。
但是,如果你深入下去,就会发现这么做会有一个缺点:要这样用的话,你必须预先知道容器的确切类型。可能刚开始的时候,你会觉得并不是什么问题,但是假设,你用ArrayList做了个设计,然后发觉,在这种情况下,选set才对,那你该怎么办?或者,你想写一段泛型程序,为了让它能不经重写就能同各种容器一同工作,它应该既不知道也不关心它要处理的是哪种容器,那么你又该怎么办呢?