今天在做数组循环时,由于不需要考虑索引值,因此想用迭代器的方式去实现,在网上查了一下竟然都是ArrayList获取迭代器的,或者就是把array转成ArrayList再获取迭代器。但是我是想直接获取数组的iterator。
思路:数组是内存地址连续的内存集合,只要获取数组对象的首地址就能获取到其首个对象,然后通过地址指针的移动就可以实现迭代的功能。因此数组使用迭代器应该是可行的。
Annotation[] annotations = XXX.getClass().getAnnotations();
Iterator<Annotation> iterator = Arrays.stream(annotations).iterator();
while(iterator.hasNext()) {
Annotation ann = iteraotr.next();
System.out.println(ann.getClass());
}
本文探讨了在不使用ArrayList的情况下,如何直接对数组进行迭代。通过将数组转换为流,再获取迭代器,实现了对数组元素的遍历。文章提供了一个示例,展示了如何对注解数组进行迭代并打印每个注解的类。

739

被折叠的 条评论
为什么被折叠?



