Java---29---Map中元素的两种取出方式
来源:互联网 发布:腾讯招聘程序员 编辑:程序博客网 时间:2024/04/28 07:17
Map中是没有迭代器的,那么Map中的元素是如何取出的呢?
有两种方法:
一种是通过Set <k> keySet ()
一种是通过 Set <Map.Entry<k,v>> entrySet ()
keySet:: 将map中所有的键存入到Set集合中。在通过map的getKey ()方法即可获得 value的值
entrySet: 返回此映射中包含的映射关系的Set视图。既包含键也包含值。 这个映射关系的数据类型就是Map.Entry.
public class MapDemo {public static void main(String[] args) {// TODO Auto-generated method stubkeySet_method();entrySet_method();}public static void entrySet_method() {Map<String, String> map = new HashMap<String, String>();map.put("01", "a5");map.put("02", "a1");map.put("03", "a2");map.put("04", "a3");map.put("05", "a4");Set<Map.Entry<String, String>> entryset = map.entrySet();Iterator<Map.Entry<String, String>> it = entryset.iterator();while (it.hasNext()) {Map.Entry<String, String> me = it.next();String key = me.getKey();String value = me.getValue();System.out.println("key : " + key + " Value : " + value);}}public static void keySet_method() {Map<String, String> map = new HashMap<String, String>();map.put("01", "a5");map.put("02", "a1");map.put("03", "a2");map.put("04", "a3");map.put("05", "a4");Set<String> keyset = map.keySet();Iterator<String> it = keyset.iterator();while (it.hasNext()) {// 获取键String key = it.next();String value = map.get(key);System.out.println("key : " + key + " Value : " + value);}}}
存入自定义元素,通过两种方式来取出:
class Stu implements Comparable<Stu> {private String name;private int age;public Stu(String name, int age) {super();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;}@Overridepublic boolean equals(Object obj) {// TODO Auto-generated method stubif (!(obj instanceof Stu))throw new ClassCastException("不是本类的对象");Stu s = (Stu) obj;return this.name.equals(s.name) && this.age == s.age;}@Overridepublic int hashCode() {// TODO Auto-generated method stubreturn name.hashCode() + age * 27;}public int compareTo(Stu o) {// TODO Auto-generated method stubInteger num = new Integer(this.age).compareTo(new Integer(o.age));if (num == 0)return this.name.compareTo(o.name);return num;}}public class MapDemo2 {public static void main(String[] args) {// TODO Auto-generated method stubMap<Stu, String> map = new HashMap<Stu, String>();map.put(new Stu("01", 10), "beijing");map.put(new Stu("02", 9), "shanghai");map.put(new Stu("03", 8), "huangzhou");map.put(new Stu("04", 15), "tianjin");Set<Stu> keySet = map.keySet();Iterator<Stu> it = keySet.iterator();while (it.hasNext()) {Stu key = it.next();String value = map.get(key);System.out.println("key : " + key.getName() + "---" + key.getAge()+ " Value : " + value);}/*************************************************/Set<Map.Entry<Stu, String>> entrySet = map.entrySet();Iterator<Map.Entry<Stu, String>> iterator = entrySet.iterator();while (iterator.hasNext()) {Map.Entry<Stu, String> me = iterator.next();Stu key = me.getKey();String value = me.getValue();System.out.println("key : " + key.getName() + "---" + key.getAge()+ " Value : " + value);}}}
1 0
- Java---29---Map中元素的两种取出方式
- java -- Map集合取出元素的两种方式
- Map元素的两种取出方式练习
- Java数据结构 map集合的两种取出方式
- Java map集合的两种取出方式
- java中map集合的两种取出方式keySet和entrySet
- Map集合的两种取出方式
- map集合的两种取出方式
- Map集合的两种取出方式
- Map集合的两种取出方式
- Map集合的两种取出方式
- Map集合的两种取出方式
- java中Map集合的取出方式
- 黑马程序员-Map的两种取出方式
- Map集合的两种取出方式(keySet、entrySet)
- Java学习笔记之 Map取出元素的三种方式
- Java学习笔记之 Map取出元素的三种方式
- 黑马程序员——JAVA基础---Map集合的两种取出方式
- 1e-6
- 算法复习--------------利用堆栈解决电路布线问题
- 使用 JUnit 进行 Java 代码的单元测试
- erlang手记(1)
- 有关Spring的[好文列表]
- Java---29---Map中元素的两种取出方式
- Linux中SQLPLUS上下键不能显示历史命令的问题/输入错误不能回退问题 rlwrap解决
- 内网渗透一:利用Xss漏洞进入内网
- 数据仓库面试题资料
- Android 数据存储方式
- CentOS 7.0 lamp+ftp安装
- jquery选择器
- Posts Tagged 【math】Max Points on a Line
- 西邮linux兴趣小组2015纳新试题之我的解读