遍历 ArrayList与Map集合

时间:2023-03-10 02:27:03
遍历 ArrayList与Map集合
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List; /**
* 遍历 ArrayList
* @author HuaWei
*
*/
public class ArrayListTest {
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("Hello");
list.add("World");
list.add("HAHAHAHA");
// 第一种遍历方法使用foreach遍历List
System.out.println("-----------------第一种遍历(1)--------------------");
for (String str : list) {
System.out.println(str);
}
System.out.println("-----------------第一种遍历(2)--------------------");
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
// 第二种遍历,把链表变为数组相关的内容进行遍历
String[] strArray = new String[list.size()];
list.toArray(strArray);
System.out.println("-----------------第二种遍历(1)--------------------");
for (int i = 0; i < strArray.length; i++) {
System.out.println(strArray[i]);
}
System.out.println("-----------------第二种遍历(2)--------------------");
for (String str : strArray) {
System.out.println(str);
}
// 第三种遍历 使用迭代器进行相关遍历
System.out.println("-----------------第三种遍历--------------------");
Iterator<String> ite = list.iterator();
while (ite.hasNext())// 判断下一个元素之后有值
{
System.out.println(ite.next());
}
}
}

  

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/**
* 遍历 Map
* @author HuaWei
*
*/
public class MapTest {
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("1", "value1");
map.put("2", "value2");
map.put("3", "value3");
System.out.println("-------------------第一种---------------------------");
// 第一种:普遍使用,二次取值
System.out.println("通过Map.keySet遍历key和value:");
for (String key : map.keySet()) {
System.out.println("key= " + key + " and value= " + map.get(key));
}
System.out.println("-------------------第二种---------------------------");
// 第二种
System.out.println("通过Map.entrySet使用iterator遍历key和value:");
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, String> entry = it.next();
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
System.out.println("-------------------第三种---------------------------");
// 第三种:推荐,尤其是容量大时
System.out.println("通过Map.entrySet遍历key和value");
for (Map.Entry<String, String> entry : map.entrySet()) {
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
System.out.println("-------------------第四种---------------------------");
// 第四种
System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
for (String v : map.values()) {
System.out.println("value= " + v);
}
}
}