1 package cn.itcast.p4.news.demo;
2
3 import java.util.ArrayList;
4 import java.util.HashMap;
5 import java.util.Iterator;
6 import java.util.List;
7 import java.util.Map;
8
9 public class ForEachDemo {
10
11 public static void main(String[] args) {
12 // TODO Auto-generated method stub
13 /*
14 * foreach语句:
15 * 格式:
16 * for(类型 变量 : Collection集合或者数组)
17 * {
18 *
19 * }
20 *
21 * 传统for和高级for的区别?
22 * 传统for可以完成对语句执行很多次,因为可以定义控制循环的增量和条件。
23 *
24 * 高级for是一种简化形式。
25 * 它必须有被遍历的目标。该目标要么是数组,要么是Collection单列集合。
26 *
27 * 对于数组的遍历如果仅仅是获取数组中的元素,可以使用高级for
28 * 如果要对数组的角标进行操作建议使用传统for。
29 *
30 *
31 */
32
33 List<String> list= new ArrayList<String>();
34
35 list.add("abc1");
36 list.add("abc2");
37 list.add("abc3");
38
39 for(String s : list) {//简化书写。只用于遍历迭代,而Iterator可以在遍历时对数据进行操作
40 System.out.println(s);
41 }
42
43 int[] arr = {3,1,5,7,4};
44
45 for(int i : arr) {
46 System.out.println(i);
47 }
48 //可以使用高级for遍历map集合吗
49 //不能直接用,可以讲map转成单列的set就可以了
50 Map<Integer, String> map = new HashMap<Integer, String>();
51
52 map.put(3, "zhangsan");
53 map.put(1, "wangyi");
54 map.put(7, "wangwu");
55 map.put(4, "zhangsansan");
56
57 for(Integer key : map.keySet()) {
58 String value = map.get(key);
59 System.out.println(key+"::"+value);
60 }
61
62 for(Map.Entry<Integer,String> me : map.entrySet()) {
63 Integer key = me.getKey();
64 String value = me.getValue();
65
66 System.out.println(key+":"+value);
67 }
68 // Iterator<String> it = list.iterator();
69 // while(it.hasNext()) {
70 // System.out.println(it.next());
71 // }
72
73
74 }
75
76 }

ForEachDemo

集合框架-工具类-JDK5.0特性-ForEach循环的更多相关文章

  1. 集合框架-工具类-JDK5.0特性-函数可变参数

    1 package cn.itcast.p4.news.demo; 2 3 public class ParamterDemo { 4 5 public static void main(String ...

  2. 集合框架-工具类-JDK5.0特性-静态导入

    1 package cn.itcast.p4.news.demo; 2 3 import java.util.ArrayList; 4 //import java.util.Collections; ...

  3. java基础37 集合框架工具类Collections和数组操作工具类Arrays

    一.集合框架工具类:Collections 1.1.Collections类的特点 该工具类中所有的方法都是静态的 1.2.Collections类的常用方法 binarySearch(List< ...

  4. JAVA基础学习之 Map集合、集合框架工具类Collections,Arrays、可变参数、List和Set集合框架什么时候使用等(4)

    package com.itcast.test20140113; import java.util.ArrayList; import java.util.Arrays; import java.ut ...

  5. Java基础---泛型、集合框架工具类:collections和Arrays

    第一讲     泛型(Generic) 一.概述 1.JDK1.5版本以后出现的新特性.用于解决安全问题,是一个类型安全机制. 2.JDK1.5的集合类希望在定义集合时,明确表明你要向集合中装入那种类 ...

  6. Java 集合框架工具类

    Collections Arrays Collections 集合框架的工具类, 里面的方法都是静态的, 可以直接使用类名调用 常用方法 1. sort(List<T> list); // ...

  7. java集合框架——工具类

    一.概述 JAVA集合框架中有两个很重要的工具类,一个是Collections,另一个是Arrays.分别封装了对集合的操作方法和对数组的操作方法,这些操作方法使得程序员的开发更加高效. public ...

  8. 集合框架-工具类-Arrays-asList方法

    1 package cn.itcast.p3.toolclass.arrays.demo; 2 3 import java.util.ArrayList; 4 import java.util.Arr ...

  9. 集合框架-工具类-Arrays方法介绍

    1 package cn.itcast.p3.toolclass.arrays.demo; 2 3 import java.util.Arrays; 4 5 public class ArraysDe ...

随机推荐

  1. Centos7查看防火墙对应的开放端口以及进行端口操作

    1.查看开放端口列表 [root@host bin]# firewall-cmd --list-ports 22/tcp 80/tcp 8888/tcp 39000-40000/tcp 12888/t ...

  2. IDEA启动报错:Error:java: Compilation failed: internal java compiler error

    检查是否一致

  3. 钉钉提供的内网穿透之HTTP穿透

    此方法无需自行提供服务器和域名 官方地址:https://developers.dingtalk.com/document/resourcedownload/http-intranet-penetra ...

  4. 模块化和webpack模块化打包

    模块化和webpack模块化打包: 一.❀ 模块化 [导入import-----导出export] 1.为什么需要模块化? JavaScript 发展初期,代码简单地堆积在一起,只要能顺利地从上往下一 ...

  5. Linux C++获取磁盘剩余空间和可用空间

    完整源码 #include <sys/statfs.h> #include <string> #include <iostream> #include <li ...

  6. 网络编程之UDP(2)linux查看socket默认缓冲区大小和最大值

    默认值 命令: cat /proc/sys/net/core/rmem_default 结果: 最大值 命令: cat /proc/sys/net/core/rmem_max 结果:

  7. Primitive Roots(poj1284)

    Primitive Roots Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 3928   Accepted: 2342 D ...

  8. Learning a Similarity Metric Discriminatively, with Application to Face Verification

    目录 概 主要内容 genuine 和 impostor 文1 文2 Chopra S, Hadsell R, Lecun Y, et al. Learning a similarity metric ...

  9. Deepin20系统安装Nvidia驱动

    Deepin20系统安装Nvidia驱动 系统设备配置信息如下: 电脑型号:华硕天选air[ASUS-FX516P] 显卡型号:RTX 3070 移动版独显 处理器型号: 11th Gen Intel ...

  10. CS5266代替AG9311|Type C转HDMI带PD3.0转换芯片|AG9311替代方案

    ALGOLTEK AG9311是一款带PD3.0 Type C转HDMI的转换芯片,它主要用于usb Type-c拓展坞以及多功能usb Type-c转换器等产品设计当中,台湾瑞奇达新推出的CS526 ...