`
yanfaguanli
  • 浏览: 658608 次
文章分类
社区版块
存档分类
最新评论

简单介绍java Enumeration

 
阅读更多

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枚举对象还含有元素,该方法得到对象中的下一个元素。

【例】
/*
* @(#)DemoEnumeration.java
* 演示Enumeration接口的使用
* /
import java.util.*;
class DemoEnumeration{
public static void main(String[] args){
//实例化MyDataStruct类型的对象
MyDataStruct mySataStruct=new myDataStruct();
//得到描述myDataStruct类型对象的enumeration对象
Enumeration myEnumeration =myDataStruct.getEnum();
//使用对象循环显示myDataStruct类型的对象中的每一个元素
while (myEnumeration.hasMoreElements())
System.out.println(myEnumeration.nextElement());
}
}

//MyEnumeration类实现Enumeration接口
class MyEnumerator 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 MyDataSttuct
{
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
分享到:
评论

相关推荐

    Java开发详解.zip

    000000_【课程介绍 —— 写在前面的话】_Java学习概述笔记.pdf 010101_【第1章:JAVA概述及开发环境搭建】_JAVA发展概述笔记.pdf 010102_【第1章:JAVA概述及开发环境搭建】_Java开发环境搭建笔记.pdf 010201_【第2...

    疯狂JAVA讲义

    2.2 UML(统一建模语言)介绍 29 2.2.1 用例图 30 2.2.2 类图 31 2.2.3 组件图 33 2.2.4 部署图 33 2.2.5 顺序图 34 2.2.6 活动图 34 2.2.7 状态机图 36 2.3 Java的面向对象特征 36 2.3.1 一切都是对象 37 ...

    Java开发技术大全 电子版

    1.3一个简单的Java应用程序14 1.4一个简单的Java小程序16 1.5本章小结18 第2章Java语言基础19 2.1Java语言的特点19 2.2Java程序的构成21 2.3数据类 型23 2.3.1基本数据类型23 2.3.2常量25 2.3.3变量26 ...

    图书关管理系统

    用于java程序的设计和开发使用import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;class Student implements java.io.Serializable{String number,name,...

    xml入门教程/xml入门教程

    &lt;script value="java"/&gt;(空元素) (属性名=“属性值”)&gt;张三 XSLT,是用于对XML进行文档格式转换,把一个XML文档转换成另一种格式的XML文档,但是其中内容是不变的。 &2.DTD(Document Type Difinition DTD...

Global site tag (gtag.js) - Google Analytics