import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set; import org.junit.Test; public class Demo { /**
* 增强for
*/
public static void main(String[] args) { } public void test2() { List list = new ArrayList(); list.add(1);
list.add(2);
list.add(3); for (Object obj : list) { int i = (Integer) obj;
System.out.println(i); }
} @Test
public void test3() { Map map = new HashMap(); map.put(1, "aaa");
map.put(2, "bbb");
map.put(3, "ccc"); Set set = map.keySet();
Iterator it = set.iterator(); while (it.hasNext()) { int key = (Integer) it.next();
String value = (String) map.get(key); System.out.println(key + ":" + value); }
} @Test
public void test4(){ Map map = new LinkedHashMap(); map.put(1, "aaa");
map.put(2, "bbb");
map.put(3, "ccc"); Set set = map.entrySet();
Iterator it = set.iterator(); while(it.hasNext()){ Map.Entry entry = (Entry) it.next();
int key = (Integer) entry.getKey();
String value = (String) entry.getValue(); System.out.println(key+":"+value); }
} @Test
public void test5(){ Map map = new HashMap(); map.put(1, "aaa");
map.put(2, "bbb");
map.put(3, "ccc"); //增强for取map的第一种方式
for(Object obj : map.keySet()){
int key = (Integer) obj;
String value = (String) map.get(key); System.out.println(key + ":" + value); }
} @Test
public void test6(){ Map map = new HashMap(); map.put(1, "aaa");
map.put(2, "bbb");
map.put(3, "ccc"); //增强for取map的二种方式
for(Object obj : map.entrySet()){ Map.Entry entry = (Entry) obj; int key = (Integer) entry.getKey();
String value = (String) entry.getValue(); System.out.println(key + ":" + value); }
} //使用增强for需要注意的问题:增强for只合适取数据,要修改数组或集合的数据,使用传统方法
@Test
public void test7(){ int arr[] = {1,2,3}; for(int i : arr){ i=10;
} System.out.println(arr[0]);
System.out.println(arr[1]);
System.out.println(arr[2]); } }

增强for循环的更多相关文章

  1. 增强for循环(forearch)

    增强for循环是为了简化在遍历数组需要先获得数组的长度或者在遍历集合中的元素的时候需要使用迭代器的操作. 引入时间:JDK1.5 语法格式: for(数据类型 变量 :需要迭代的数组或者集合){ } ...

  2. Java学习——增强for循环、switch

    增强for循环 Java5引入了一种主要用于数组的增强型for循环. 例子 public class ForTest { public static void main(String args[]){ ...

  3. 增强for循环用法___ArrayList数组实现使用下标最好,LinkedList使用增强型的(转载)

    总结: 1.For-Each循环的缺点:丢掉了索引信息. 当遍历集合或数组时,如果需要访问集合或数组的下标,那么最好使用旧式的方式来实现循环或遍历,而不要使用增强的for循环,因为它丢失了下标信息. ...

  4. 关于增强for循环

    1 增强for循环增强for循环是for的一种新用法!用来循环遍历数组和集合. 1.1 增强for的语法for(元素类型 e : 数组或集合对象) {}例如:int[] arr = {1,2,3};f ...

  5. 【Java基础】增强for循环要注意陷阱

    什么是增强for循环 增强for循环是一种简单模式的for循环,为了方便数组和集合的遍历而存在. int[] arr = new int[]{1, 2, 3, 4, 5, 6}; for (int a ...

  6. (14)jdk1.5开始的一些新特性:静态导入,增强for循环,可变参数,自动装箱/拆箱,枚举类型

    Jdk1.5新特性之静态导入 jdk1.5新特性值静态导入 静态导入的作用:简化缩写 静态导入的作用:可以作用一个类的所有静态成员. 静态导入的格式:import static 包名.类名.静态的成员 ...

  7. 增强for循环用法

    1.首先增强for循环和iterator遍历的效果是一样的,也就说增强for循环的内部也就是调用iteratoer实现的, 但是增强for循环有些缺点,例如不能在增强循环里动态的删除集合内容.不能获取 ...

  8. 增强for循环赋值

    增强for循环赋值 代码如下: double[] testList01 = new double[5]; java.util.Scanner sc = new java.util.Scanner(Sy ...

  9. java中的Iterator与增强for循环的效率比较

    最近在优化代码时遇到了这个问题:Iterator与增强for循环到底哪个效率高?之前在学习的时候,好像记着老师说过遍历集合(如list)时,使用iterator好像正规一些,因为是专用的,但是运行效率 ...

  10. JAVA进阶之旅(一)——增强for循环,基本数据类型的自动拆箱与装箱,享元设计模式,枚举的概述,枚举的应用,枚举的构造方法,枚举的抽象方法

    JAVA进阶之旅(一)--增强for循环,基本数据类型的自动拆箱与装箱,享元设计模式,枚举的概述,枚举的应用,枚举的构造方法,枚举的抽象方法 学完我们的java之旅,其实收获还是很多的,但是依然还有很 ...

随机推荐

  1. 《DSP using MATLAB》示例Example4.2

  2. SU suxcontour命令学习

  3. iOS Xcode behaviors个人常用Debug配置

  4. 经典的nav导航

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. uva10106(大数乘法)

    public class Product { public static void main(String[] args){ Scanner sc = new Scanner(new Buffered ...

  6. 【BZOJ1864】[Zjoi2006]三色二叉树 树形DP

    1864: [Zjoi2006]三色二叉树 Description Input 仅有一行,不超过500000个字符,表示一个二叉树序列. Output 输出文件也只有一行,包含两个数,依次表示最多和最 ...

  7. [转]复制虚拟机后linux中的eth0变成eth1问题

    为什么原来的eth0会变成eth1? 很多Linux distribution使用udev动态管理设备文件,并根据设备的信息对其进行持久化命名.udev会在系统引导的过程中识别网卡,将mac地址和网卡 ...

  8. Universal JS module loader

    With dependency ;(function (root, factory) { if (typeof define === 'function' && define.amd) ...

  9. BZOJ4260 Codechef REBXOR 题解

    题目大意: 有一个长度为n的序列,求1≤l1≤r1<l2≤r2≤n使得(⊕r1i=l1ai)+(⊕r2i=l2ai)最大,输出这个最大值. 思路: 用Trie求出前缀异或和以及后缀异或和,再求出 ...

  10. ubifs扩展性分析

    文件系统的可扩展性,主要考察flash规模变大时对文件系统性能的影响,主要考察指标有: mount时间 访问时间 检查修复时间 最大文件大小 最大文件系统大小 最大文件个数   mount时间     ...