Lawrence Dol..

6

我用两个非常简单的类解决了这个问题,一个用于Enumeration,一个用于Iterator.枚举包装如下:

static class IterableEnumeration

extends Object

implements Iterable, Iterator

{

private final Enumeration enumeration;

private boolean used=false;

IterableEnumeration(final Enumeration enm) {

enumeration=enm;

}

public Iterator iterator() {

if(used) { throw new IllegalStateException("Cannot use iterator from asIterable wrapper more than once"); }

used=true;

return this;

}

public boolean hasNext() { return enumeration.hasMoreElements(); }

public T next() { return enumeration.nextElement(); }

public void remove() { throw new UnsupportedOperationException("Cannot remove elements from AsIterator wrapper around Enumeration"); }

}

哪个可以使用静态实用程序方法(这是我的偏好):

/**

* Convert an `Enumeration` to an `Iterable` for a once-off use in an enhanced for loop.

*/

static public Iterable asIterable(final Enumeration enm) {

return new IterableEnumeration(enm);

}

...

for(String val: Util.asIterable(enm)) {

...

}

或者通过实例化类:

for(String val: new IterableEnumeration(enm)) {

...

}

java 不能使用foreach_为什么我不能在Java Enumeration上使用foreach?相关推荐

  1. java带参数的方法笔记_具有Java参数的方法的类声明

    类声明可以包含在Java中具有参数的方法.演示此过程的程序如下: 示例class Message { public void messagePrint(String msg) { System.out ...

  2. Java改知能机_Java 面试突击之 Java 并发知识基础 进阶考点全解析

    版权说明:本文内容根据 github 开源项目整理所得 项目地址:https://github.com/Snailclimb/JavaGuide​github.com 一.基础 什么是线程和进程? 何 ...

  3. java正则截取xml节点_实例讲述Java使用正则表达式截取重复出现的XML字符串功能...

    Java使用正则表达式截取重复出现的XML字符串功能示例 本文实例讲述了Java使用正则表达式截取重复出现的XML字符串功能.分享给大家供大家参考,具体如下: public static void m ...

  4. java设计模式中不属于创建型模式_23种设计模式第二篇:java工厂模式定义:工厂模式是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式...

    23种设计模式第二篇:java工厂模式 定义: 工厂模式是 Java 中最常用的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 工厂模式主要是为创建对象提供过渡接口, ...

  5. java 获取 反射 方法 名_乐字节Java反射之一:反射概念与获取反射源头Class

    一.Java反射机制概念 "程序运行时,允许改变程序结构或变量类型,这种语言称为动态语言",如Python, Ruby是动态语言:显然C++,Java,C#不是动态语言,但是JAV ...

  6. Java就业难不难?是否要参加Java培训?

    这个是老话题了,java程序员远远没有饱和,年薪10万+元是很正常的一个薪酬水平.现在java程序员挺多的,但是职位需求量更大,特别是能干实干或优秀的程序员是相当缺乏的,没存在饱和一说.对于Java的 ...

  7. Java虚拟机规范阅读(二)IEEE754简介以及Java虚拟机中的浮点算法

    什么是浮点数 在计算机系统的发展过程中,曾经提出过多种方法表达实数.典型的比如相对于浮点数的定点数(Fixed Point Number).在这种表达方式中,小数点固定的位于实数所有数字中间的某个位置 ...

  8. 分享五款java学习辅助工具,总有你用的上的~

    想要学好java技术,除了自身的努力,辅助工具也不缺少,辅助工具可以帮助大家在今后的工作中可以提高工作效率,下面小编就来分享五款java学习辅助工具,总有你用的上的~ 五款java学习辅助工具: 1. ...

  9. 深入java虚拟机 第四版_深入理解Java虚拟机-常用vm参数分析

    Java虚拟机深入理解系列全部文章更新中... https://blog.ouyangsihai.cn/shen-ru-li-jie-java-xu-ni-ji-java-nei-cun-qu-yu- ...

最新文章

  1. 裸centos安装PCRE时报错解决
  2. 1.使用sizeof计算类的大小
  3. 前端框架 渐进式框架
  4. 镜像安装linux选择内核版本,在CentOS和Ubuntu中安装Linux Kernel 4.13.10
  5. Java 控制台程序的基本结构测试分析草稿
  6. FastDFS安装脚本
  7. flash as3 socket安全服务网关(socket policy file server)
  8. 在.net中调用vb脚本(ITpro专用的vb脚本,而不是浏览器vb脚本)
  9. 远程调用——hessian使用入门
  10. 单利计算与复利计算程序
  11. HTML教程(完整版).pdf,HTML教程详解(完整版).pdf
  12. 最小二乘法曲线拟合(代码环境:matlab)
  13. 第六届CCF计算机职业资格认证考试题解(C++)
  14. SWUST OJ 99:Euclid‘s Game
  15. Date:2021.3.11 ---- 树莓派4B raspbian/ Debian + Apache2 + php7 + Mariadb/Mysql +owncloud搭建私有云NAS
  16. 微信小程序IOS手机能正常访问但是安卓手机出现REQUEST FAILED无法访问服务器问题
  17. bootstrap table获取表格数据方式
  18. Mockito3.8 如何mock静态方法 (如何mock PageHelper)
  19. 3.3 构建神经网络小结
  20. 灵动微 MM32 多路ADC-DMA配置

热门文章

  1. 理科状元4年博士0篇论文,发顶刊终逆袭
  2. 丘成桐: 没有经过考验的创新,往往深度不够
  3. 世界上最伟大的十个公式,看看你懂得几个?
  4. 关于机器学习,这里有一份权威入门指南
  5. 世界上十大数据中心,全球数字经济顶梁柱
  6. 阿里巴巴超大规模 Kubernetes 基础设施运维体系介绍
  7. DataWorks 功能实践速览03期 — 生产开发环境隔离
  8. 深入分析 Flutter 渲染性能
  9. 洞察设计模式的底层逻辑
  10. 阿里宜搭重磅发布专有云版本、精品应用市场,助力政企数字化转型