集合的输出[
- Iterator
- ListIterater
- foreach输出
- Enumeration输出
- System.out.println(all); //假设all是一个集合的实例,a,b分别是其元素,则输出 [a,b],适用于输出集合中所有元素。
只要碰到了集合输出的操作,就一定使用Iterator接口,这是最标准的做法。
Iterator是专门的迭代输出接口(将元素一个个进行判断,判断其是否有内容,如果有内容则把内容取出),其实例化依靠Collection接口。
java.util.Collection有个方法:
Iterator<E> iterator() //返回在此 collection 的元素上进行迭代的迭代器。
java.util.Iterater
- boolean hasNext() 如果仍有元素可以迭代,则返回 true。
- E next() 返回迭代的下一个元素。
- void remove() 从迭代器指向的 collection 中移除迭代器返回的最后一个元素(可选操作)。
Iterater的标准用法:
List<String> all = new ArrayList<String>();
all.add("f");
all.add("eng");
all.add("lei");
Iterator<String> ite = all.iterator(); //为Iterator接口实例化
while(ite.hasNext()){//判断是否有内容
System.out.println(ite.next());
}
Iterator的remove()方法比较少用,因为其本身的功能是输出内容。
注意点:在利用迭代输出时用了List的remove()方法将会出现错误。
总结:
Iterator接口的功能是从前向后输出,属于单向输出。
Iterator:迭代输出
使用Iterator时最好不用remove()方法。
ListIterator
Iterator的子接口,用于双向输出。
public interface ListIterator<E>
extends Iterator<E>
- ListIterator<E> listIterator() 返回此列表元素的列表迭代器(按适当顺序)。
- ListIterator<E> listIterator(int index) 返回列表中元素的列表迭代器(按适当顺序),从列表的指定位置开始。
- Collection接口中并没有定义可以为此类实例化的操作,只有List接口中才存在ListIterator接口的实例化操作。
-
- 必须先由前向后输出后才能由后向前输出
-
- 增加和替换元素:add(E e), set(E e)
foreach对集合输出的支持
List<String> all = new ArrayList<String>() ;
all.add("fff") ;
all.add("_") ;
all.add("lll") ;
for(String str:all){
System.out.print(str + " ") ;
}
Enumeration旧接口,很少用。
一般直接操作Vector类。
Vector类有如下方法:
Enumeration<E> elements() 返回此向量的组件的枚举。
Vector<String> all = new Vector<String>() ;
all.add("fff") ;
all.add("_") ;
all.add("lll") ;
Enumeration<String> enu = all.elements() ;
while(enu.hasMoreElements()){ //判断是否有内容,hasNext()
System.out.print(enu.nextElement() + "、") ; // 输出元素:next()
}
分享到:
相关推荐
本教程的"Java实例 - 集合输出源代码+详细指导教程.zip"旨在帮助开发者深入理解Java集合框架,并通过实例源代码进行实践学习。 集合框架包括接口、类和算法,主要由以下部分组成: 1. **接口**:这些是集合的抽象...
5. 编写程序,生成 5 个 1 至 10 之间的随机整数,存入一个 List 集合,编写方法对 List 集合进行排序,然后遍历集合输出 Java 中的 List 集合可以用来存储大量数据。通过使用 Random 类可以生成随机整数,然后将其...
Jekyll 布局支持 Jekyll 站点的多种布局,为每个页面、帖子或集合输出具有单独布局的多种格式文件。用法将以下内容添加到您网站的Gemfile gem 'jekyll-layouts'并将以下内容添加到您站点的_config.yml gems : - ...
- **集合输出**:将集合内容打印到控制台。 - **List循环移动元素**:在List中移动元素的位置。 - **遍历HashTable的键值**:使用keySet()方法获取HashTable的所有键,然后遍历键和对应的值。 Java集合框架为...
数据结构课程设计_集合运算(完整)是一份关于集合运算实验的报告,涵盖了集合运算的基本概念、算法思想、流程图、主函数、链表生成、集合输出、并运算函数、交运算函数、差函数等知识点。 在集合运算中,集合是指...
在IT领域,尤其是在编程与算法设计中,"输出集合的所有子集"是一个常见的问题,它不仅考验了程序员对数据结构的理解,还涉及到了递归、位运算等多种技术的应用。根据给定的文件信息,我们可以深入探讨两个实现方法:...
本程序分为三个功能,分别为集合运算器、幂集计算器、集合恒等式证明器。压缩包中包含使用说明以及算法...幂集计算器:实现自定义元素的集合输出幂集 集合恒等式证明:输入两个集合运算式,判断是否相等,如:A-B=A∩~B
输出n个数集合的所有子集 c++课程实验 eclipse 编写
在LL1分析中,First集合和Follow集合扮演了关键角色。 First集合是文法中每个非终结符可能生成的第一个符号的集合。例如,对于非终结符A,First(A)包含了从A出发的所有产生式所能生成的第一个符号。如果一个产生式...
该类中包含了多个成员函数,用于实现集合的基本运算,例如添加元素、删除元素、判断元素是否在集合中、输出集合等。 首先,我们定义了 int_set 类的构造函数,用于初始化集合的最大大小和当前大小。然后,我们定义...
(8)输出集合1;(9)输出集合2;(0)退出。 “构造集合1”和“构造集合2”时,需以整型数字形式键入集合元素。 <br>为实现上述程序功能,以线性链表表示集合。为此,需要两个抽象数据类型:线性表和集合。...
隐状态是不可直接观测到的内部状态,而观测序列则是外部可以直接观察到的输出结果。由于观测序列仅依赖于隐状态,所以这两个随机过程之间存在一种间接的联系。 HMM可以表示为一个五元组(Σ, V, A, B, π),其中Σ是...
输出模糊集合可以使用max-min乘积总的输出模糊集合等方法来计算。 去模糊化方法 去模糊化方法是将输出模糊集合转换为确定值的过程。常见的去模糊化方法有极大、高度去模糊化、高度修正法等。 这份PPT学习教案提供...
本文将详细讲解C++编程中集合类的实现,包括集合类的定义、添加元素、删除元素、判断集合是否为空或满、判断元素是否包含在集合中、计算集合中的元素总数、输出集合中的元素、求两个集合的交集和并集等操作。...
⑶ 编写求集合A、B的交C=A∩B的函数,并输出集合C的元素; ⑷ 编写求集合A、B的并D=A∪B的函数,并输出集合D的元素; ⑸ 求集合A与B的对称差E=(A-B)∪(B-A) 的函数,并输出集合D的元素; ⑹ 设计一个菜单,具有输入...
在图形界面、输入输出流、线程池和网络编程等其他Java知识点中,数组和集合也扮演着重要角色。例如,在进行文件读写操作时,常常需要使用数组来存储读取的数据;在处理网络请求时,集合可以用来存储客户端连接、会话...
用Java语言采用接口设计模式、代理设计模式、工厂设计模式实现对excel中的表实现基本的导出(写)功能,把一个对象集合输出到一个excel表中。 【基本功能】 将对象集合导出到Excel表 【扩展功能】 1、自由设置表头 2...
常见的集合运算包括交集(两个集合共有的元素构成的新集合)、并集(两个集合所有元素构成的新集合)以及差集(一个集合去除另一个集合中的元素后剩下的元素构成的新集合)。 ### 二、程序代码分析 #### 1. 数据...