zoukankan      html  css  js  c++  java
  • [Day20]Map接口、可变参数、Collections

    1.Map接口-元素成对存在,每个元素由健与值两部分组成,通过键可以找所对应的值

      1.1 Map子类

      (1)HashMap<K,V>:存储数据所用的哈希表结构,元素的存取数据顺序不能保证一致。由于要保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法

      (2)LinkedHashMap<K,V>:HashMap下的子类,存储数据采用的是哈希表结构+链表结构,通过链表结构保证元素的存取顺序一致,通过哈希表结构保证键的唯一、不重复,需要重写键的hashCode()方法、equals()方法

      1.2 Map接口中的常用方法

      (1)put方法:将指定的键与值对应起来,并添加到集合中

        返回值为键所对应的值,若指定的键在集合中没有,返回null;

      (2)get方法:获取指定键(key)所对应的值(value)

      (3)remove方法:根据制定的键(key)删除元素,返回被删除元素的值(value)

      1.3 Map集合遍历键找值方式

      (1)利用keySet()方法,获取Map集合中所有的键,由于键是唯一的,所以返回一个Set集合存储所有的键

      (2)遍历键的Set集合,得到每一个键

      (3)根据键利用get(Object key)方法,获取键所对应的值

      1.4 Entry键值对对象-将键值对的对应关系封装成对象

      (1)Map.Entry<K,V> -Map接口中提供的一个静态内部嵌套接口

         getKey()方法 - 返回与此项对应的键

         getValue()方法 - 返回与此项对应的值

         entrySet()方法 - 返回Map集合中所有的键值对(Entry)对象,以Set集合形式返回

      (2)利用Entry接口实现遍历方式

        利用entrySet()方法存储键值对对象Set集合

        通过调用迭代器或foreach遍历,调用getKey()和getValue()方法读取

      (3)Map集合不能直接使用迭代器或者foreach进行遍历。需要转换成Set集合

      1.5 HashMap存储自定义类型键值

      (1)当给HashMap中存放自定义对象时,若自定义对象作为key存在,为保证对象唯一,需要重写对象的hashCode和equals方法

      (2)要保证顺序的一制,可以使用LinkedHashMap集合存放

      1.6 静态导入-导入静态部分,某个类的静态成员可以直接使用,简化代码

      格式:import static XXX.YYY;   导入后YYY可以直接使用

      1.7 可变参数-一个方法需要接受多个参数,且多个参数类型一致

      (1)格式: 修饰符 返回值 方法名(参数类型...形参名){ }

      (2)参数中只能有一个可变参数

      (3)当方法拥有多参数时,参数中包含可变参数,可变参数一定要写在参数列表的末尾位置

      

    2.Collections集合工具类

      (1)public static<T>  void sort(List<T>  list)  //集合元素排序

        调用:Collections.sort(list)

      (2)public static void shuffle(List<?> list)  //集合元素存储位置打乱

        调用如上

    3.集合嵌套-Collection集合嵌套、Collection集合和Map集合相互嵌套、Map集合嵌套

      

        

  • 相关阅读:
    Template(模板)模式
    Android活动(Activity)创建及生命周期
    Android--SharedPreferences数据存储方案
    Adapter适配器模式--图解设计模式
    准时制生产(Just in Time,JIT)
    术语
    制造资源计划(Manufacturing Resource Planning,Mrp II)
    Angualr6表单提交验证并跳转
    Android PDA扫描枪广播接搜条码并使用
    Java统计代码行数
  • 原文地址:https://www.cnblogs.com/ERFishing/p/10732408.html
Copyright © 2011-2022 走看看