Map接口的使用 Map接口的使用

Map接口的使用

1.Map定义:

  Collection是孤立存在的,向集合中存储元素是一个一个放,Map中的集合 存储是成对,通过键找到值,键和值是映射关系。

2.注意:

  Map集合中不能包含重复的键,但是可以包含重复的值。

3.继承关系:

  Map接口不能实例化,HashMap,LinkedHashMap是Map接口的一个实现类,两个方法使用类似。

4.Map相关的方法:

  添加:put  得到:get  移除:remove

代码:

  

复制代码
public class MapDemo {
    public static void main(String[] args) { Map<Integer, String> map = new HashMap<Integer, String>(); map.put(1, "张三"); map.put(2, "李四"); map.put(3, "王五"); map.put(4, "赵六"); //键值不允许重复 如果重复 覆盖之前的值 map.put(4, "小明"); map.put(10000, "小红"); // System.out.println(map); // String s = map.remove(1); // System.out.println(s); // System.out.println(map); String s = map.get(4); System.out.println(s); } }
复制代码

5.集合遍历的方式:

  调用集合的方法keySet,用Set集合存储Map的键

复制代码
public class MapDemo1 {
   public static void main(String[] args) { //1 调用集合的方法 keySet 将所有的键 存储到Set集合中 //2 遍历Set集合 获取所有的键 //3 调用map集合中get() 获取值 Map<String, String> m = new HashMap<String, String>(); m.put("大哥", "猪大宝"); m.put("二哥", "猪二宝"); m.put("三个", "猪三宝"); Set<String> s = m.keySet(); Iterator<String> it = s.iterator(); while(it.hasNext()){ String key = it.next(); //通过键 key 获得值 String value = m.get(key); System.out.println(key+": "+value); } System.out.println("================================"); for(String didi:m.keySet()){ String value = m.get(didi); System.out.println(didi+": "+value); } } }
复制代码

6.集合的操作工具:

  Collections.shuffle对集合进行随机排序

复制代码
public static void fun1(){
        List<Integer> list = new ArrayList<Integer>(); list.add(1); list.add(12); list.add(123); list.add(1234); list.add(12345); list.add(123456); System.out.println(list); //调用 工具类方法shuffle 对集合进行随机排列  Collections.shuffle(list); System.out.println(list); }
复制代码

  Collections.binarySearch搜索变量

复制代码
// Collections.binarySearch   静态方法
    //传递集合   和要搜寻的变量  如果存在返回 下标  不存在返回负数
    public static void fun(){ List<Integer> list = new ArrayList<Integer>(); list.add(1); list.add(2); list.add(3); list.add(4); int aa = Collections.binarySearch(list, 2); System.out.println(aa); }
复制代码

猜你喜欢

转载自www.cnblogs.com/cuichaobo/p/10681293.html