1、java中大量的类都是Iterable类型,主要包括Collection类(但不包括各种Map)
2、foreach语法主要用于数组,也可以应用于任何Collection对象(因为Collection实现了Iterable),
实际上能够应用于任何实现Iterable接口的类型。
3、对于Map怎么循环呢?可以循环Map的key的集合Entry[](实现了Iterable),见下例子:
4、数组(例如String[] strings={"A","B","C"})可以使用foreach,但是没有实现Iterable
下面例子是获取系统的环境变量:
System.getenv()获取一个Map,entrySet()产生一个由Map.Entry的元素构成的Set,并且Set是一个Iterable,
因此它可以佛reach循环。
public static void main(String[] args) throws IOException {
for(Map.Entry entry:System.getenv().entrySet()){
System.out.println(entry.getKey()+":"+entry.getValue());
}
}