1. import java.util.ArrayList;
  2. import java.util.HashMap;
  3. import java.util.Iterator;
  4. import java.util.LinkedHashMap;
  5. import java.util.List;
  6. import java.util.Map;
  7. import java.util.Map.Entry;
  8. import java.util.Set;
  9.  
  10. import org.junit.Test;
  11.  
  12. public class Demo {
  13.  
  14. /**
  15. * 增强for
  16. */
  17. public static void main(String[] args) {
  18.  
  19. }
  20.  
  21. public void test2() {
  22.  
  23. List list = new ArrayList();
  24.  
  25. list.add(1);
  26. list.add(2);
  27. list.add(3);
  28.  
  29. for (Object obj : list) {
  30.  
  31. int i = (Integer) obj;
  32. System.out.println(i);
  33.  
  34. }
  35. }
  36.  
  37. @Test
  38. public void test3() {
  39.  
  40. Map map = new HashMap();
  41.  
  42. map.put(1, "aaa");
  43. map.put(2, "bbb");
  44. map.put(3, "ccc");
  45.  
  46. Set set = map.keySet();
  47. Iterator it = set.iterator();
  48.  
  49. while (it.hasNext()) {
  50.  
  51. int key = (Integer) it.next();
  52. String value = (String) map.get(key);
  53.  
  54. System.out.println(key + ":" + value);
  55.  
  56. }
  57. }
  58.  
  59. @Test
  60. public void test4(){
  61.  
  62. Map map = new LinkedHashMap();
  63.  
  64. map.put(1, "aaa");
  65. map.put(2, "bbb");
  66. map.put(3, "ccc");
  67.  
  68. Set set = map.entrySet();
  69. Iterator it = set.iterator();
  70.  
  71. while(it.hasNext()){
  72.  
  73. Map.Entry entry = (Entry) it.next();
  74. int key = (Integer) entry.getKey();
  75. String value = (String) entry.getValue();
  76.  
  77. System.out.println(key+":"+value);
  78.  
  79. }
  80. }
  81.  
  82. @Test
  83. public void test5(){
  84.  
  85. Map map = new HashMap();
  86.  
  87. map.put(1, "aaa");
  88. map.put(2, "bbb");
  89. map.put(3, "ccc");
  90.  
  91. //增强for取map的第一种方式
  92. for(Object obj : map.keySet()){
  93. int key = (Integer) obj;
  94. String value = (String) map.get(key);
  95.  
  96. System.out.println(key + ":" + value);
  97.  
  98. }
  99. }
  100.  
  101. @Test
  102. public void test6(){
  103.  
  104. Map map = new HashMap();
  105.  
  106. map.put(1, "aaa");
  107. map.put(2, "bbb");
  108. map.put(3, "ccc");
  109.  
  110. //增强for取map的二种方式
  111. for(Object obj : map.entrySet()){
  112.  
  113. Map.Entry entry = (Entry) obj;
  114.  
  115. int key = (Integer) entry.getKey();
  116. String value = (String) entry.getValue();
  117.  
  118. System.out.println(key + ":" + value);
  119.  
  120. }
  121. }
  122.  
  123. //使用增强for需要注意的问题:增强for只合适取数据,要修改数组或集合的数据,使用传统方法
  124. @Test
  125. public void test7(){
  126.  
  127. int arr[] = {1,2,3};
  128.  
  129. for(int i : arr){
  130.  
  131. i=10;
  132. }
  133.  
  134. System.out.println(arr[0]);
  135. System.out.println(arr[1]);
  136. System.out.println(arr[2]);
  137.  
  138. }
  139.  
  140. }

增强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. js:方法1. 数组

    Array.every() array.every(f); array.every(f, o); f(array[i], i, array) [1,2,3].every(function(x) { r ...

  2. Tactical Multiple Defense System 二分图

    This problem is about a war game between two countries. To protect a base, your country built a defe ...

  3. hdu 1520 Anniversary party 基础树dp

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission( ...

  4. MFC 打开文件对话框 打开单个文件

    CFileDialog的语法: CFileDialog(BOOL bOpenFileDialog,LPCTSTR lpszDefExt=NULL,LPCTSTR lpszFileName=NULL,D ...

  5. javascript选取文档元素

    用指定的id属性 用指定的name属性 用指定的标签名字 用指定的CSS类 匹配指定的CSS选择器 通过ID选取元素 var section1 = document.getElementById(&q ...

  6. CodeForceS#276-A

    A. Factory   One industrial factory is reforming working plan. The director suggested to set a mythi ...

  7. 【原】iOS多线程之NSThread、NSOperationQueue、NSObject和GCD的区别

    区别: Thread: 是这几种方式里面相对轻量级的,但也是使用起来最负责的,你需要自己管理thread的生命周期,线程之间的同步.线程共享同一应用程序的部分内存空间, 它们拥有对数据相同的访问权限. ...

  8. textarea{resize:none}

    resize:none设置了不可以调整文本域

  9. JS性能优化笔记搜索整理

    通过网上查找资料了解关于性能优化方面的内容,现简单整理,仅供大家在优化的过程中参考使用,如有什么问题请及时提出,再做出相应的补充修改. 一. 让代码简洁:一些简略的表达方式也会产生很好的优化 eg:x ...

  10. CF 256D. Good Sequences(DP)

    题目链接 主要是标记前面素数的最大的DP值,要认真一些.没想到居然写了一个很难发现的错误. #include <cstdio> #include <cstring> #incl ...