java map使用

package test;


import java.util.HashMap;
import java.util.Map;


/**
 * 介绍:1.map.entry是map接口的一个内部接口,他的作用就是包装一个map的节点,这个节封装了key,value,以及别的值(比如
 * hashmap中的哈希码和next指针),   在java8中,必须将entry中得到的key和value进行转换后才能赋值给相应的类型;
 * --------
 * Map.entrySet() 这个方法返回的是一个Set<Map.Entry<K,V>>,Map.Entry 是Map中的一个接口,他的用途是表示一个映射项(
 * 里面有Key和Value),而Set<Map.Entry<K,V>>表示一个映射项的Set。Map.Entry里有相应的getKey和getValue方法,
 * 即JavaBean,让我们能够从一个项中取出Key和Value。
 *2.遍历Map有四种方法。
 3.Map接口
Map提供了一种映射关系,其中的元素是以键值对(key-value)的形式存储的,能够实现根据key快速查找value;
Map中的键值对以Entry类型的对象实例形式存在;
建(key值)不可重复,value值可以重复,一个value值可以和很多key值形成对应关系,每个建最多只能映射到一个值。
Map支持泛型,形式如:Map<K,V>
Map中使用put(K key,V value)方法添加
HashMap类
HashMap是Map的一个重要实现类,也是最常用的,基于哈希表实现
HashMap中的Entry对象是无序排列的
Key值和value值都可以为null,但是一个HashMap只能有一个key值为null的映射(key值不可重复)
 */
public class Maptest {


public static void main(String[] args) {
Map<Integer,String> map = new HashMap<>();  //定义整形和字符串集合
Map<String,String> map2 = new HashMap<>(); //定义字符串和字符串集合
 
for (int i = 0; i < 5; i++) {
map.put(i,Integer.toString(i)); //Map<Integer,String>,
map2.put("笔记本电脑"+ Integer.toString(i), "联想公司" ); // Map<String,String> ,(key值)不可重复,value值可以重复
}


for (Map.Entry entry : map.entrySet()) {
// 在java8中,必须将entry中得到的key和value进行转换后才能赋值给相应的类型;
int key = (int) entry.getKey();
String val = (String) entry.getValue();
System.out.print("健:");
dsp(key);
System.out.print("值:");
dsp(val);
System.out.println("");
}

System.out.println("字符串输出===");
for (Map.Entry<String, String> entry : map2.entrySet()) {
System.out.println("健= " + entry.getKey() + " -- 值= " + entry.getValue());  
}
}


public static void dsp(Object o) {  //输出方法
System.out.print("" + o);
}


}

猜你喜欢

转载自blog.csdn.net/qq_32444825/article/details/80733914