以前只做过LIST的循环打印,昨天被问到MAP循环怎么弄,一下给人问蒙了,最后查API,发现Map类中有一个方法values() ,可以返回一个Collection集合容器,然后可以循环打印。而且发现实现了Iterable的类都可以用foreach来循环打印,JDK5后的新特性。
虽然说,不用实现Iterable也可以循环抓出容器里的值,但是用用新特性也没坏处。准备从Iterable开始分析。
类名:java.lang Interface Iterable<T>
方法:Iterator<T> iterator()
说明:Implementing this interface allows an object to be the target of the "foreach" statement.
All Known Subinterfaces:
BeanContext, BeanContextServices, BlockingDeque<E>, BlockingQueue<E>,
Collection<E>, Deque<E>, DirectoryStream<T>,
List<E>, NavigableSet<E>, Queue<E>,
Set<E>, SortedSet<E>
All Known Implementing Classes:
AbstractCollection, AbstractList, AbstractQueue, AbstractSequentialList, AbstractSet, ArrayBlockingQueue, ArrayDeque,
ArrayList, AttributeList, BatchUpdateException, BeanContextServicesSupport, BeanContextSupport, ConcurrentLinkedQueue, ConcurrentSkipListSet, CopyOnWriteArrayList, CopyOnWriteArraySet, DataTruncation, DelayQueue, EnumSet,
HashSet, JobStateReasons, LinkedBlockingDeque, LinkedBlockingQueue,
LinkedHashSet,
LinkedList, Path, PriorityBlockingQueue, PriorityQueue, RoleList, RoleUnresolvedList, RowSetWarning, SecureDirectoryStream, SerialException, ServiceLoader, SQLClientInfoException, SQLDataException, SQLException, SQLFeatureNotSupportedException, SQLIntegrityConstraintViolationException, SQLInvalidAuthorizationSpecException, SQLNonTransientConnectionException, SQLNonTransientException, SQLRecoverableException, SQLSyntaxErrorException, SQLTimeoutException, SQLTransactionRollbackException, SQLTransientConnectionException, SQLTransientException, SQLWarning, Stack, SyncFactoryException, SynchronousQueue, SyncProviderException,
TreeSet, Vector
自己写的一个类:
package test;
import java.util.Iterator;
public class IterableTest implements Iterator{
public boolean hasNext() {
// TODO Auto-generated method stub
return false;
}
public Object next() {
// TODO Auto-generated method stub
return null;
}
public void remove() {
// TODO Auto-generated method stub
}
}
实现Iterable接口必须实现hasNext(),next(),remove三个方法。
实现的时候可以:
public class IterableTest implements Iterator<String>{
//下面的next()方法也有所改变
public String next() {
//但是不能
public class IterableTest implements Iterator<String>,Iterator<Integer>{
因为在实现方法后next方法有一个返回值,默认是Object,如果实现两个类型不一致的接口,那么就与“在一个类中写两个方法名和参数一致,而返回值不一致”的逻辑性错误一样了。
待续。。。
分享到:
相关推荐
1.需要node环境支持 2.下载模拟器->微信->搜索你要扒取的小程序(点开即可) 3.打开RE文件管理器,获取root权限,从根目录开始。... 4.执行反编译命令,node wuWxapkg.js filepath 百度也有很多教程,基本大致相同,...
mesh.js, 异步iterable迭代器的实用工具库 Mesh是一个用于异步iterable迭代器的实用工具库。动机这个库最初是用来处理复杂的数据流,并统一应用程序在内部和外部的通信方式。 它还作为一个单一的单通道通道for所有...
未来的里程碑-[x]实现整个`java.util.List`接口-[x]实现整个`java.util.Deque`接口-[]实现整个`java.util.Iterable`接口(使用Spliterator,等等)-[]试用其他节点类型-[]实现`java.io.Serializable`接口列表未来的...
资源来自pypi官网。 资源全名:iterable-queue-1.2.0.tar.gz
PC端小程序包反编译工具【node,wupack,解密工具】 1.小程序包解密.rar 2.wxappUnpacker-master.rar 3.node-v14.17.6-x64.msi 具体事宜教程请观看大明子的博客教程“微信...” 如若无法下载,请关注后使用csdn进行联系。
资源分类:Python库 所属语言:Python 资源全名:iterable-api-0.1.0.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
返回java.lang.Iterable<com> 。 例如: package your.name ; import com.squareup.javapoet.JavaFile ; import com.squareup.javapoet.TypeSpec ; import static java.util.Collections.singletonList ; import ...
使用您的API密钥实例化该类: $ iterable = new Iterable ( 'YOUR API KEY' );例子清单显示所有列表: $ iterable -> lists (); 订阅用户到列表: $ iterable -> list_subscribe ( $ list_id , array (array ( '...
wx小程序反编译脚本wxappUnpacker-master,2020年4月3日亲测可用,需安装node,配置环境,安装5个依赖,大佬GitHub原地址:https://github.com/qwerty472123/wxappUnpacker
Java源码分析Iterable.pdf
超全Java集合框架讲解 - 超全Java集合框架讲解 - 集合框架总览 - Iterator Iterable ListIterator - Map 和 Collection 接口 - Map 集合体系详解 - HashMap - LinkedHashMap - TreeMap - WeakHashMap - ...
-、Iterator Iterable ListIterator 二、Map 和 Collection 接口Map 集合体系详解 HashMap LinkedHashMap TreeMap WeakHashMap Hashtable Collection 集合体系详解 Set 接口 AbstractSet 抽象类SortedSet 接口...
注意:集合变量可以是数组或实现了Iterable接口的集合类 2.静态导入(这样调用一个静态方法的时候就不需要【类名.方法名】去调用了,直接写静态方法名就可 以了) 格式:import static java.lang.Math.* 注意:...
资源分类:Python库 所属语言:Python 资源全名:iterable_orm-0.3.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
iter(iterable) 从可迭代对象中返回一个迭代器,iterable必须是一个能提供迭代器的可迭代对象 next(iterator) 从迭代器iterator中获取下一条记录,如果无法获取下一条记录,则触发StopIteration 异常 说明: 迭代器...
map(function, iterable, ...) 3 参数 function -- 函数 iterable -- 一个或多个序列 4 返回值 Python 2.x 返回列表。 Python 3.x 返回迭代器。 5 实例 以下实例展示了 map() 的使用方法: >>>def square(x) :
Collection接口继承自Iterable接口,这意味着可以通过for-each循环遍历集合元素。 List接口是有序的集合,可以包含重复的元素。List接口提供了按照索引位置访问元素的方法,以及添加、删除和修改元素的操作。List...
若依整合Ureport2导出报表提示 Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: org/apache/poi/POIXMLTypeLoader 的解决文档说明
如果需要额外的功能OrderedDict,建议的补救措施是将结果转换为所需的类型:OrderedDict(nt._asdict())。该unicodedata模块已升级为使用Unicode 12.0.0 版本。 ASYNCIO 在Windows上,现在是默认的事件循环...
一个类如果实现了Iterable接口,就意味着“该类本身支持遍历”,并可以通过for-each这种循环语法来直接遍历。当然,一个类如果没有实现Iterable接口,也可以通过挂载外部迭代器Iterator进行遍历。 此外,内部迭代器...