5.13Map集合

package org.westos.Map集合博客练习;

import java.util.HashMap;
import java.util.Set;

/**
 * Map集合:
 * HashMap集合是Map的一个子实现类,它本身基于哈希表;
 * HashMap集合存储的是一对键值对,它可以保证键的唯一性;
 * HashMap不能保证输入与输出的顺序;
 * */
public class Text1 {
	public static void main(String[] args) {
		HashMap<String,Integer> map = new HashMap<String,Integer>();
		map.put("hello", 1);
		map.put("world",2);
		map.put("java", 3);
		//创建一个set集合用来存储hashmap集合的键,以便用来遍历
		Set<String> s = map.keySet();
		for(String str:s) {
			//因为键的唯一性可以通过键获取值
			Integer i = map.get(str);
			System.out.println(str+"----"+i);
		}
	}
}

package org.westos.Map集合博客练习;

import java.util.HashMap;
import java.util.Set;

/**
 * HsahMap集合中键为自定义对象时.
 * 
 * 如果成员变量的值一样,视为相同,这就需要在自定义类中重写hashcode()与equals()方法
 * */
public class Text2 {
	public static void main(String[] args) {
		HashMap<Student,Integer> map = new HashMap<Student,Integer>();
		Student s1 = new Student("张三",11);
		Student s2 = new Student("李四",12);
		Student s3 = new Student("赵五",13);
		Student s4 = new Student("王六",14);
		Student s5 = new Student("张三",11);
		map.put(s1, 1);
		map.put(s2, 2);
		map.put(s3, 3);
		map.put(s4, 4);
		map.put(s5, 5);//张三键对应的值将被修改为5
		Set<Student> s = map.keySet();
		for(Student ss:s) {
			int i = map.get(ss);
			System.out.println(ss+"----"+i);
		}
	}
}

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页