复制Iterator元素给数组并保证数组长度等于Iterator元素个数
来源:互联网 发布:童装代理一手货源淘宝 编辑:程序博客网 时间:2024/05/19 00:15
需求如题,iterator没有size()方法,获取不到元素的个数,所以就想无论你有多少个元素就按你有10个元素来处理,放了10个元素之后发现还有元素没有放入,这时候就想对数组进行扩容并将旧数组复制给新数组。但是扩容之后可能会有很多空位置出现,所以在iterator.hasNext()时我们需要使用临时变量来记录iterator循环了多少次,这个临时变量就是iterator的元素个数,有了这个个数之后就好办了。代码:
private static int[] convertIteratoToList(Iterator<Integer> iterator) {int[] smallResult = new int[10];int i = 0;while (iterator.hasNext()) {int size=smallResult.length;if (i >= size) {// 扩容int[] bigResult = new int[smallResult.length * 2];// 复制result内容到bigResultSystem.arraycopy(smallResult, 0, bigResult, 0, size);smallResult = bigResult;bigResult = null;}smallResult[i++] = iterator.next();}if (i != smallResult.length) {// 去掉数组内的空位置int[] bigResult = new int[i];System.arraycopy(smallResult, 0, bigResult, 0, i);smallResult = bigResult;bigResult = null;}return smallResult;}
- 复制Iterator元素给数组并保证数组长度等于Iterator元素个数
- perl数组的长度与元素个数
- perl数组的长度与元素个数
- perl数组的长度与元素个数
- 给定一个整型数组,求数组元素大于等于所有元素平均值的元素个数
- Struts2 iterator标签集合中元素为数组的显示
- 数组中大于等于平均数的元素的个数
- VC中获得动态数组长度与数组元素个数
- shell中获取字符串长度的方法,获取数组元素个数,获取数组元素,数组遍历
- 关于数组元素个数
- 数组元素个数 ARRAYSIZE
- 求数组元素个数
- 数组元素复制
- C# 求多维数组各维的长度/元素个数
- Shell 数组元素个数${#array[@]} 数组的所有元素${array[*]} 字符串长度${#str}
- iterator移除元素
- 怎么从键盘给数组输入不定个数的元素?
- struts标签iterator利用索引遍历指定个数的元素
- 学习JAVA找工作
- IIS7 Error 0x80070021
- Hibernate使用SQL查询返回实体类型
- 正则表达式入门
- MySQL Source-Configuration Options
- 复制Iterator元素给数组并保证数组长度等于Iterator元素个数
- 使用VS TFS源码分析软件PATFS实现最佳配置
- Java泛型
- 如何编写出拥抱变化的代码?
- HashTable原理与实现
- putty和超级终端中,对于回车与换行的处理
- ant简单介绍
- WPR-007:WPF中窗体的透明设置
- 范型编程杂谈