java中集合的遍历
2013-12-26 09:24
127 查看
java中集合的遍历:
简单测试:
简单测试:
package com.cn.foreach; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.ListIterator; import java.util.Map; import java.util.Map.Entry; import java.util.Set; import org.junit.Test; public class CollectionTest { /* 单列集合的遍历 */ // List集合的遍历 // 传统方式遍历 @Test public void traverseList1() { List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); list.add("d"); // 遍历集合 // 获得迭代器 Iterator<String> iterator = list.iterator(); while (iterator.hasNext()) { String value = iterator.next(); System.out.print(value + " "); } } // 使用java5新特性,增强for循环遍历 @Test public void traverseList2() { List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); list.add("d"); for (String value : list) { System.out.print(value + " "); } } // Set集合的遍历 // 方式一,使用传统方式 @Test public void traverseSet1() { Set<String> set = new HashSet<String>(); set.add("a"); set.add("b"); set.add("c"); set.add("d"); // 获得迭代器 Iterator<String> iterator = set.iterator(); while (iterator.hasNext()) { String value = iterator.next(); System.out.print(value + " "); } } // 方式二,使用增强for循环方式遍历 @Test public void traverseSet2() { Set<String> set = new HashSet<String>(); set.add("a"); set.add("b"); set.add("c"); set.add("d"); for (String value : set) { System.out.print(value + " "); } } /* 双列集合 */ // 方式一,使用传统方式遍历 @Test public void traverseMap1() { Map<String, String> map = new HashMap<String, String>(); map.put("a", "aaa"); map.put("b", "bbb"); map.put("c", "ccc"); map.put("d", "ddd"); // 获得迭代器 Set<String> set = map.keySet(); Iterator<String> iterator = set.iterator(); while (iterator.hasNext()) { String key = iterator.next(); String value = map.get(key); System.out.println(key + "=" + value); } } // 方式二,使用传统方式二遍历 @Test public void traverseMap2() { Map<String, String> map = new HashMap<String, String>(); map.put("a", "aaa"); map.put("b", "bbb"); map.put("c", "ccc"); map.put("d", "ddd"); // 获得迭代器 Set<Entry<String, String>> setEntry = map.entrySet(); Iterator<Entry<String, String>> iterator = setEntry.iterator(); while (iterator.hasNext()) { Entry<String, String> entry = iterator.next(); String key = entry.getKey(); String value = entry.getValue(); System.out.println(key + "=" + value); } } // 方式三,使用增加for循环遍历 @Test public void traverseMap3() { Map<String, String> map = new HashMap<String, String>(); map.put("a", "aaa"); map.put("b", "bbb"); map.put("c", "ccc"); map.put("d", "ddd"); // 获得迭代器 for (Entry<String, String> entry : map.entrySet()) { String key = entry.getKey(); String value = entry.getValue(); System.out.println(key + "=" + value); } } // 迭代过程中删除元素 @Test public void deleteElement() { List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); list.add("d"); // 在迭代的过程中删除集合中元素,只能使用迭代器对象删除元素 Iterator<String> iterator = list.iterator(); while (iterator.hasNext()) { String value = iterator.next(); if (value.equals("d")) iterator.remove(); } for (String value : list) { System.out.print(value + " "); } } // 迭代过程中增加元素 @Test public void addElement() { List<String> list = new ArrayList<String>(); list.add("a"); list.add("b"); list.add("c"); list.add("d"); /* * 集合迭代过程中,添加元素也只能用迭代器对象添加 * Iterator类中没有add()方法,ListIterator是Iterator的子类,有add()方法 */ ListIterator<String> iterator = list.listIterator(); while (iterator.hasNext()) { iterator.next(); iterator.add("e"); } for (String value : list) { System.out.print(value + " "); } } // 增强for循环要注意的问题 // 增强for循环只适合访问容器的元素,不能对元素做修改 @Test public void testUpdate() { // 测试代码 int[] arr = { 1, 2 }; for (@SuppressWarnings("unused") int num : arr){ num++; } System.out.println(arr[0]);// 1 System.out.println(arr[1]);// 2 } }
相关文章推荐
- Java几种集合的遍历方法
- JAVA学习--集合的遍历
- Java中List集合的遍历
- 【Java】集合(List、Set、Map)遍历、删除、比较元素时的小陷阱
- [置顶] Android java程序员必备技能,集合与数组中遍历元素,增强for循环的使用详解及代码
- 【Java集合的详细研究4】Java中如何遍历Map对象的4种方法
- java 集合 Map的遍历方式
- Java学习之容器上(Collection接口常用方法,Iterator接口,使用foreach循环遍历Collection集合元素,Set集合通用知识(Hashset类,hashcode()与LinkedHashSet类))
- Java中List集合的遍历
- java遍历集合
- 对JAVA集合进行遍历删除时务必要用迭代器
- Java基础知识强化之集合框架笔记17:List集合的特有的遍历功能
- Java中List集合的遍历
- Java遍历Map集合的三种方法
- Java集合的Stack、Queue、Map的遍历
- java中List、Set、Map集合遍历的几种方式小结和比较
- Java基础知识强化之集合框架笔记41:Set集合之HashSet存储自定义对象并遍历练习
- Java学习之容器上(Collection接口常用方法,Iterator接口,使用foreach循环遍历Collection集合元素,Set集合通用知识(Hashset类,hashcode()与Lin
- [疯狂Java]集合:Java集合框架、Collection、forEach遍历器/Consumer函数接口、forEach遍历集合
- java中遍历Map集合的集中方法总结