/*
jdk1.5新特性之----增强for循环:底层是一个迭代器

作用:简化迭代器书写格式

使用范围:实现了Iterable接口的对象或者数组对象

格式:
    for(变量类型  变量名 :遍历目标){
        //代码块
    }
    
注意:
    1.因为for in循环底层还是迭代器,所以在循环的时候我们不能修改迭代对象的长度
    2.因为我们没有实例化迭代器对象,所以我们不能使用迭代器中的一些方法
*/

基本运用实例代码:

public class Demo2 {
public static void main(String[] args) {
//定义一个单列集合类
HashSet<String> set = new HashSet<String>();
set.add("狗娃 ");
set.add("狗剩 ");
set.add("铁蛋 ");
//遍历单列集合类中的数据
for(String item : set) {
System.out.print(item);
} System.out.println(" "); //定义一个数组
int[] arr = {1,2,3};
//遍历数组
for(int item : arr) {
System.out.print(item);
} }
}

遍历双列集合

/*
注意:双列集合中没有实现Iterable接口 需求:用for in 遍历双列集合
*/
public class Demo3 {
public static void main(String[] args) {
HashMap<Integer,String> map = new HashMap<Integer,String>();
map.put(1001,"狗蛋");
map.put(1003,"狗剩");
map.put(1002,"狗剩"); //keySet:此映射中包含的键的 set 视图 (遍历键值)
Set<Integer> set = map.keySet();
for(int item : set) {
System.out.println(item);
} //此映射中包含的映射关系的 set 视图 (键值对)
Set<Entry<Integer, String>> set1 = map.entrySet();
for(Entry<Integer, String> item : set1) {
System.out.println(item);
} }
}

59. jdk1.5新特性之----增强for循环的更多相关文章

  1. JDK5的新特性之增强for循环遍历数组或集合

    [格式] for(元素的类型 变量名 : 数组或Collection集合名){ //此处使用变量名即可,该变量就是普通for里的i. }

  2. JDK1.7新特性

    jdk1.7新特性 1 对集合类的语言支持: 2 自动资源管理: 3 改进的通用实例创建类型推断: 4 数字字面量下划线支持: 5 switch中使用string: 6 二进制字面量: 7 简化可变参 ...

  3. JDK1.5新特性,基础类库篇,集合框架(Collections)

    集合框架在JDK1.5中增强特性如下: 一. 新语言特性的增强 泛型(Generics)- 增加了集合框架在编译时段的元素类型检查,节省了遍历元素时类型转换代码量. For-Loop循环(Enhanc ...

  4. JDK1.7新特性(2):异常和可变长参数处理

    异常 jdk1.7对try--catch--finally的异常处理模式进行了增强,下面我们依次来看增强的方面. 1. 为了防止异常覆盖,给Throwable类增加了addSuppressed方法,可 ...

  5. JavaSE----API之集合(Collection、List及其子类、Set及其子类、JDK1.5新特性)

    5.集合类 集合类的由来: 对象用于封装特有数据,对象多了须要存储:假设对象的个数不确定.就使用集合容器进行存储. 集合容器由于内部的数据结构不同,有多种详细容器.不断的向上抽取,就形成了集合框架. ...

  6. JDK1.8新特性之(三)--函数式接口

    在上一篇文章中我们介绍了JDK1.8的新特性有以下几项. 1.Lambda表达式 2.方法引用 3.函数式接口 4.默认方法 5.Stream 6.Optional类 7.Nashorm javasc ...

  7. JDK1.8新特性之(一)--Lambda表达式

    近期由于新冠疫情的原因,不能出去游玩,只能在家呆着.于是闲来无事,开始阅读JDK1.8的源代码.在开始之前也查询了以下JDK1.8的新特性,有针对性的开始了这段旅程. 只看不操作,也是不能心领神会的. ...

  8. jdk1.6新特性

    1.Web服务元数据 Java 里的Web服务元数据跟微软的方案基本没有语义上的区别,自从JDK5添加了元数据功能(Annotation)之后,SUN几乎重构了整个J2EE体 系, 由于变化很大,干脆 ...

  9. JDK1.8 新特性

    jdk1.8新特性知识点: Lambda表达式 函数式接口 *方法引用和构造器调用 Stream API 接口中的默认方法和静态方法 新时间日期API https://blog.csdn.net/qq ...

随机推荐

  1. 有趣的taskset命令,使进程再指定CPU上运行

    前言 taskset命令,用于进程的CPU调优,可以把某进程,指定再某CPU内工作. 如还不明白,可以参考此文 http://www.361way.com/linux-context-switch/5 ...

  2. Hibernate中Session的save()、update()、merge()、lock()、saveOrUpdate()和persist()方法有什么区别?

    Hibernate的对象有三种状态:瞬态.持久态和游离态.游离状态的实例可以通过调用save().persist()或者saveOrUpdate()方法进行持久化:脱管状态的实例可以通过调用 upda ...

  3. C++ 浅谈 strlen 与 sizeof的区别

    先举个栗子: 字符串数组跟字符串指针,然后分别使用sizeof跟strlen看输出结果. char strA[] = "2017-7-19"; char *strB = " ...

  4. maven知识

    首先下载maven 然后win的配置环境变量 maven目录结构 --main --java --package --test --java --package resources maven 需要有 ...

  5. 使用nano编辑器进行查找和替换

    笔者自己常用的是vim.这里nano的使用场景就是刚安装好Ubuntu系统,想要替换更新源,这时候还没装上vim.所以,学一下如何用nano查找和替换,可以解决这个小问题. 首先sudo nano / ...

  6. shell脚本编程运算

    一算术运算 bash中的算术运算:help let+, -, *, /, %取模(取余), **(乘方)实现算术运算:(1) let var=算术表达式(2) var=$[算术表达式](3) var= ...

  7. POJ 2240 Arbitrage (spfa判环)

    Arbitrage Arbitrage is the use of discrepancies in currency exchange rates to transform one unit of ...

  8. oracle-字符串常用函数

    1.拼接字符串 1)可以使用“||”来拼接字符串 -------------------------------------- select '拼接'||'字符串' as str from dual ...

  9. 汇编学习(1)——win7 64位调出debug

      一.安装方法: 1.下载一个dosbox和win7 32位debug.exe,安装dosbox,打开页面 2. 将debug.exe放入磁盘根目录,这里以D盘为例.在dosbox中输入mount ...

  10. 发送邮件 django

    https://blog.csdn.net/qq_39138295/article/details/82527868 https://www.cnblogs.com/yoyoketang/p/1048 ...