黑马程序员技术交流社区

标题: <石家庄校区>Day3---4 [打印本页]

作者: yangxiaoqiang    时间: 2018-11-20 16:21
标题: <石家庄校区>Day3---4
本帖最后由 yangxiaoqiang 于 2018-11-20 16:28 编辑

Day3:数据结构
Collection接口
一:List集合
List集合体系的特点:                                                                                      
    1. 元素存取有序 (存入和取出元素的顺序一致)   排序: 从小到大                                            
    2. 元素可以重复  
    3. 有索引
[size=18.6667px] set集合体系特点:  1 元素不可重复    [size=18.6667px]2  没有索引                                                                                                                  1:ArrayList集合的特点
ArrayList底层的数据结构:   数组
ArrayList的特点:     查询快     增删慢      线程不安全, 效率高  
2:LinkedList集合的特点和特有方法
LinkedList底层的数据结构:   链表
LinkedList的特点:  查询慢  增删快   线程不安全, 效率高
二:set集合
1:HashSet集合的特点 :
HashSet特点: 1. 元素不可重复     2. 没有索引    3. 元素存取无序 (存入和取出顺序有可能不一致)    4. 底层采用 哈希表 结构. (查询快)      哈希表 = 数组 + 链表或红黑树
2:LinkedHashSet集合的特点 :
LinkedHashSet特点:  1. 元素存取有序 (存入和取出顺序一致)     2. 元素不可重复     3. 没有索引
Day4:Map集合
Map集合的特点 :1. 是双列集合, 一个元素包含两个值 (键key, 值value) 键值对 2. key和value的类型可以相同, 也可以不同 3. key不允许重复, value可以重复  4. key和value是一一对应的, 一个键只能对应一个值HashMap特点: key 存储无序,  能存null值或null键        LinkedHashMap特点   key 存取有序
Map遍历方式一: keySet()方法实现通过键找值Map<String, String> map = new HashMap<>();
    // keySet()遍历
    Set<String> keys = map.keySet();  ①:Map对象调用KeySet()方法 ,获取包含所有Key的Set集合
    for (String key : keys) {                   ②遍历Set集合,获取每个Key
        // 通过每个键获取值
        String value = map.get(key);      ③通过Map对象调用get(Object key) 方法根据key获取value
        // 打印当前键值对
        System.out.println(key + "=" + value);
    }

Map遍历方式二: Entry键值对对象介绍
Map<String, String> map = new HashMap<>();
    // keySet()遍历
    Set<Map.Entry<String, String>> entries = map.entrySet(); ①获取Map集合中所有的键值对对象的集合
    for (Map.Entry<String, String> entry : entries) {        ②遍历Map对象,获取键值对
        // 通过Entry对象获取每个键值对
        String value = entry.getKey();
        String value = entry.getValue();
        // 打印当前键值对
        System.out.println(key + "=" + value);
    }








欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2