码迷,mamicode.com
首页 > 其他好文 > 详细

遍历枚举接口的元素

时间:2017-02-22 12:54:01      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:ring   5.0   i++   ash   .com   package   返回值   class   重要特性   

早在Java SE 1.0版,就存在集合类。集合类可以用来管理一组相关的对象。当需要查看、使用集合中的所有对象时可以使用枚举接口对其进行遍历。枚举接口中定义了两个方法,它通常和向量一起使用。本实例将演示其用法,实例运行效果如图

技术分享

实现了Enumeration接口的对象可以生成一系列元素,每次生成一个。通过连续调用nextElement()方法可以连续获得枚举接口中的元素。但是如果枚举接口中已经没有元素,调用该方法会抛出异常。因此应该先用hasMoreElements()方法判断枚举中是否还有可用元素。该接口定义了两个方法,其声明如下:

boolean hasMoreElements()

测试枚举接口中是否还含有可用元素,因为其返回值是boolean,所以适合放在while循环中。

 

E nextElement()

 

如果枚举接口中还有可用元素,则返回下一个元素,否则会出现NoSuchElementException。

 技巧:Collections类的静态方法enumeration()可以用来将任意集合转换成枚举接口类型。

 

编写EnumerationTest类,在该类的main()方法中,首先在向量中增加3个元素,然后利用枚举接口将其取出。代码如下:

 

package com.mingrisoft.enumerationtest;

import java.util.Enumeration;
import java.util.Vector;

public class EnumerationTest {
    public static void main(String[] args) {
        Vector<Integer> vector = new Vector<Integer>();
        for (int i = 0; i < 3; i++) {
            vector.add(i);
            System.out.println("在向量中增加元素:" + i);
        }
        Enumeration<Integer> e = vector.elements();
        while (e.hasMoreElements()) {
            System.out.println("获得向量中的元素:" + e.nextElement());
        }
    }
}

 

说明:Java SE 5.0版中,新增了一个重要特性——泛型。该特性可以用来控制集合中元素的类型。

 

 

 

心法领悟:枚举接口的升级。

 

随着Java的不断发展,新增加了一个Iterator接口,该接口不仅包括了枚举接口的功能,还增加了一个remove()方法。另外,该接口对方法的名字进行了优化:hasNext()用来测试是否还有可用元素,next()用来获得元素。在新类中,推荐使用Iterator()接口来实现遍历功能。

 

 

 

 

遍历枚举接口的元素

标签:ring   5.0   i++   ash   .com   package   返回值   class   重要特性   

原文地址:http://www.cnblogs.com/mrxy/p/6427968.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!