package package1;
import java.util.Collection;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
public class Demo5 {
public static void main(String[] args) {
Map<String, String> map=new HashMap<>();
map.put("a", "b");
map.put("c", "d");
map.put("e", "f");
map.put("g", "h");
System.out.println(map);
//获取map中的键
Set<String> key=map.keySet();
for(String aa:key) {
System.out.println(aa);
}
//获取map中的值
Collection<String> values=map.values();
for(String value:values) {
System.out.println(value);
}
//通过调用key.set()获得键值对
Set<String> keys=map.keySet();
//利用for循环输出
for(String bb:keys) {
System.out.println(bb+"--"+map.get(bb));
}
System.out.println("-----------------------");
//迭代map集合的值
Set<String> set=map.keySet();
Iterator< String> it=set.iterator();
while(it.hasNext()) {
String name=it.next();
System.out.println(name+"----"+map.get(name));
}
System.out.println(map.size());
//调用Entry对象中的getKey和getValue方法就能获得键值对
Set<Entry<String,String>> entrys=map.entrySet();
for(Entry<String,String> entry:entrys) {
System.out.println(entry.getKey()+"---"+entry.getValue());
}
}
}
实例:
package package1;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class Demo4 {
public static void main(String[] args) {
Map<Student, String> map=new HashMap<>();
map.put(new Student("zhangsan", 20), "aa");
map.put(new Student("lisi", 30), "bb");
map.put(new Student("wangwu", 40), "cc");
map.put(new Student("zhaoliu", 50), "dd");
//利用for循环输出
for(Student aa:map.keySet()) {
System.out.println(aa+"--"+map.get(aa));
}
//迭代map集合的值
Set<Student> set=map.keySet();
Iterator<Student> it=set.iterator();
while (it.hasNext()) {
Student name=it.next();
System.out.println(name+"-----"+map.get(name));
}
}
}
class Student{
String name;
int age;
public Student(String name,int age) {
this.name=name;
this.age=age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
转载:
//循环遍历map的方法
public class MapF {
public static void main(String[] args) {
Map<String, Integer> tempMap = new HashMap<String, Integer>();
tempMap.put("a","12");
tempMap.put("b","34");
tempMap.put("c","56");
// JDK1.4中
// 遍历方法一 hashmap entrySet() 遍历
Iterator it = tempMap.entrySet().iterator();
while (it.hasNext()) {
Map.Entry entry = (Map.Entry) it.next();
Object key = entry.getKey();
Object value = entry.getValue();
System.out.println("key=" + key + " value=" + value);
}
System.out.println("");
// JDK1.5中,应用新特性For-Each循环
// 遍历方法二
for (Map.Entry<String, Integer> entry : tempMap.entrySet()) {
String key = entry.getKey().toString();
String value = entry.getValue().toString();
System.out.println("key=" + key + " value=" + value);
}
System.out.println("");
// 遍历方法三 hashmap keySet() 遍历
for (Iterator i = tempMap.keySet().iterator(); i.hasNext();) {
Object obj = i.next();
System.out.println(obj);// 循环输出key
System.out.println("key=" + obj + " value=" + tempMap.get(obj));
}
for (Iterator i = tempMap.values().iterator(); i.hasNext();) {
Object obj = i.next();
System.out.println(obj);// 循环输出value
}
// 遍历方法四 treemap keySet()遍历
for (Object o : tempMap.keySet()) {
System.out.println("key=" + o + " value=" + tempMap.get(o));
}
System.out.println("11111");
// java如何遍历Map <String, ArrayList> map = new HashMap <String,
// ArrayList>();
System.out.println("java 遍历Map <String, ArrayList> map = new HashMap<String, ArrayList>();");
Map<String, ArrayList> map = new HashMap<String, ArrayList>();
Set<String> keys = map.keySet();
Iterator<String> iterator = keys.iterator();
while (iterator.hasNext()) {
String key = iterator.next();
ArrayList arrayList = map.get(key);
for (Object o : arrayList) {
System.out.println(o);
}
}
Map<String, List> map = new HashMap<String, List>();
for (Map.Entry entry : map.entrySet()) {
String key = entry.getKey().toString();
List<String> list= (List) entry.getValue();
for (String value : list) {
System.out.println(key + "====" + value);
}
}
}
}