`
- 浏览:
47010 次
- 性别:
- 来自:
成都
-
Enumeration接口
Enumeration接口本身不是一个数据结构。但是,对其他数据结构非常重要。 Enumeration接口定义了从一个数据结构得到连续数据的手段。例如,Enumeration定义了一个名为nextElement的方法,可以用来从含有多个元素的数据结构中得到的下一个元素。
Enumeration接口提供了一套标准的方法,由于Enumeration是一个接口,它的角色局限于为数据结构提供方法协议。下面是一个使用的例子:
//e is an object that implements the Enumeration interface
while (e.hasMoreElements()) {
Object o= e.nextElement();
System.out.println(o);
}
实现该接口的对象由一系列的元素组成,可以连续地调用nextElement()方法来得到 Enumeration枚举对象中的元素。Enumertion接口中仅定义了下面两个方法。
·boolean hasMoreElemerts()
测试Enumeration枚举对象中是否还含有元素,如果返回true,则表示还含有至少一个的元素。
·Object nextElement()
如果Bnumeration枚举对象还含有元素,该方法得到对象中的下一个元素。
【例】
package ch16;
import java.util.*;
class DemoEnumeration{
public static void main(String[] args){
//实例化MyDataStruct类型的对象
MyDataStruct mds=new MyDataStruct();
//得到描述myDataStruct类型对象的enumeration对象
Enumeration men =mds.getEnum();
//使用对象循环显示myDataStruct类型的对象中的每一个元素
while (men.hasMoreElements())
System.out.println(men.nextElement());
}
}
//MyEnumeration类实现Enumeration接口
class MyEnumeration implements Enumeration
{
int count; // 计数器
int length; //存储的数组的长度
Object[] dataArray; // 存储数据数组的引用
//构造器
MyEnumeration(int count,int length,Object[] dataArray){
this.count = count;
this.length = length;
this.dataArray = dataArray;
}
public boolean hasMoreElements() {
return (count< length);
}
public Object nextElement() {
return dataArray[count++];
}
}
//MyDataStruct类用于实例化一个简单的、可以提供enumeration对象
//给使用程序的数据结果对象
class MyDataStruct
{
String[] data;
// 构造器
MyDataStruct(){
data = new String[4];
data[0] ="zero";
data[1]="one";
data[2] ="two";
data[3]="three";
}
// 返回一个enumeration对象给使用程序
Enumeration getEnum() {
return new MyEnumeration(0,data.length,data);
}
}
程序的运行结果为:
zero
one
two
three
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
相比之下,`Enumeration`接口并不具备这样的机制,所以在多线程环境下,如果使用`Enumeration`遍历集合并在同一时间修改集合,可能不会立即检测到并发修改,可能导致不确定的行为或数据错误。 4. **历史与版本** ...
`Enumeration`接口在`java.util`包中定义,它有以下两个方法: 1. `boolean hasMoreElements()`: 检查枚举是否还有更多元素。 2. `E nextElement()`: 返回枚举的下一个元素。 以下是一个使用`Enumeration`遍历`...
在本文中,我们将详细介绍Java获取Linux服务器上的IP操作,包括Linux服务器上的网络接口、回环接口、获取IP地址的方法等。 Linux服务器上的网络接口 在Linux服务器上,网络接口是用来发送和接受数据包的基本设备...
Java中的迭代器(Iterator)与枚举器(Enumeration)是两种用于遍历集合(Collection)的接口。在Java集合框架中,集合提供了多种数据结构存储对象,而迭代器与枚举器提供了访问这些集合中元素的方法。尽管它们的...
它取代了Java集合框架中的Enumeration接口,提供了更加灵活和强大的迭代方式。Iterator接口定义了三个方法:hasNext()、next()和remove()。 * hasNext()方法:返回一个布尔值,表示迭代是否还有更多元素。 * next()...
另外,还提到了异常类EmptyStackException和NoSuchElementException,它们分别在Stack类和Enumeration接口中抛出。 让我们详细探索每个类和接口的知识点: **Enumeration接口**: Enumeration是Java早期版本中的一...
Java API包含了Java标准库中的所有类和接口,涵盖了从基本数据类型操作到高级网络通信、多线程、I/O流等众多功能。 在Java API实例中,我们可以找到以下关键知识点: 1. **基础类和接口**:如`String`、`Integer`...
Java.util包是Java标准库中的核心包之一,它包含了大量用于通用编程的类和接口,是Java开发中不可或缺的一部分。这个包提供了数据结构、集合框架、事件处理、日期时间、随机数生成、位集以及与I/O流操作相关的辅助...
Java集合类可以分为两种:Collection接口和Map接口。Collection接口有两个子接口:List接口和Set接口。List接口是有序的,可以重复元素,常用的实现类有ArrayList和LinkedList。Set接口是无序的,不允许重复元素,...
`Enumeration`接口用于遍历`Vector`或其他容器中的元素,通过`hasMoreElements()`检查是否有更多元素,`nextElement()`获取下一个元素。 集合框架是Java中处理一组对象的标准库,包括接口(如`Collection`、`List`...
在接口开放过程中,打印接口参数是一项非常重要的任务,它能够帮助开发者进行调试、排查问题以及理解接口的工作方式。...在Java Web开发中,利用Filter或AOP实现接口参数的全局打印是一种常用且高效的方法。
Enumeration 是 Java 集合框架中的一种枚举接口,用于遍历集合中的元素。Enumeration 接口提供了 hasMoreElements() 和 nextElement() 两个方法,用于遍历集合中的元素。 Java 集合框架提供了一种灵活的数据结构,...
4. **Enumeration接口**:在老版本的Java中,用于迭代集合元素,现在已经被`Iterator`接口取代。 除此之外,Java API还有其他多个包,例如: - `java.awt`和`javax.swing`:提供了创建图形用户界面(GUI)的类和...
Enumeration 接口是 Java 中的一种古老的迭代输出方法,它定义了可以对一个对象的类集中的元素进行枚举(一次获得一个)的方法。这个接口尽管没有被摈弃,但已经被 Iterator(迭代器)所替代。Enumeration 对新程序...
Java 集合概述 Collection 接口 Iterator 接口 Set List Map Collections 工具类 Enumeration
6. Enumeration枚举器:在较旧的API中,有些集合使用Enumeration接口来遍历元素,但它不具备Iterator的删除功能。 7. 泛型:Java的泛型机制使得集合可以安全地存储特定类型的对象,避免了类型转换异常,增强了代码...