随笔分类 -  118.JAVA之集合

1 2 下一页

集合的类型与各自的特性
摘要:Collection: 单列集合 1.List 有存储储顺序, 可重复 ArrayList: 数组实现, 查找快, 增删慢,由于是数组实现, 在增和删的时候会牵扯到数组增容, 以及拷贝元素. 所以慢。数组是可以直接按索引查找, 所以查找时较快 LinkedList: 链表实现, 增删快, 查找慢由于 阅读全文

posted @ 2018-11-21 09:29 LoaderMan 阅读(356) 评论(0) 推荐(0)

集合面试题
摘要:获取数组的长度使用什么?获取字符串使用什么?获取集合使用什么? 答: 获取数组的长度使用length属性 获取字符串使用length()方法 获取集合使用size()方法 HashMap和HashTable的区别? 相同点 HashMap 和 HashTable 都是基于哈希表实现的,其内部每个元素 阅读全文

posted @ 2017-02-16 20:20 LoaderMan 阅读(184) 评论(0) 推荐(0)

数据结构
摘要:概述: 就是存储数据的方式 分类: 栈 , 队列 , 数组 , 链表 , 哈希表 , 树 数据结构的特点: 栈: 先进后出 队列: 先进先出 数组: 查询块 , 增删慢 链表: 查询慢 , 增删快 阅读全文

posted @ 2017-02-16 20:20 LoaderMan 阅读(181) 评论(0) 推荐(0)

集合遍历
摘要:set集合遍历: 1.迭代器 2.增强for循环:只能遍历 List集合的遍历: 1. 迭代器 2. 增强for循环 3. 普通for循环 get(index) 和size() map集合的遍历: 1. 迭代器 2. 增强for循环 注:增强for循环:只能遍历,不能删除,迭代器遍历可以删除,但必须 阅读全文

posted @ 2017-02-16 20:19 LoaderMan 阅读(203) 评论(0) 推荐(0)

集合汇总
摘要:List(存取有序,有索引,可以重复) ArrayList 底层是数组实现的,线程不安全,查找和修改快,增和删比较慢 LinkedList 底层是链表实现的,线程不安全,增和删比较快,查找和修改比较慢 Vector 底层是数组实现的,线程安全的,无论增删改查都慢 如果查找和修改多,用ArrayLis 阅读全文

posted @ 2017-02-16 20:18 LoaderMan 阅读(166) 评论(0) 推荐(0)

HashMap和hashTable的区别
摘要:* Hashtable是JDK1.0版本出现的,是线程安全的,效率低,HashMap是JDK1.2版本出现的,是线程不安全的,效率高 * Hashtable不可以存储null键和null值,HashMap可以存储null键和null值 阅读全文

posted @ 2017-02-16 20:11 LoaderMan 阅读(240) 评论(0) 推荐(0)

Collections工具类
摘要:Collections类概述 针对集合操作 的工具类 Collections成员方法 public static <T> void sort(List<T> list) public static <T> int binarySearch(List<?> list,T key) public sta 阅读全文

posted @ 2017-02-16 20:11 LoaderMan 阅读(174) 评论(0) 推荐(0)

Map接口和Collection接口的区别
摘要:* Map是双列的,Collection是单列的 * Map的键唯一,Collection的子体系Set是唯一的 * Map集合的数据结构值针对键有效,跟值无关;Collection集合的数据结构是针对元素有效 阅读全文

posted @ 2017-02-16 20:10 LoaderMan 阅读(303) 评论(0) 推荐(0)

LinkedHashMap
摘要:* 特点: 有序 , 唯一 * 底层的数据结构为: 链表和哈希表 , 链表保证有序 , 哈希表保证唯一 阅读全文

posted @ 2017-02-16 20:09 LoaderMan 阅读(187) 评论(0) 推荐(0)

HashMap
摘要:结论: 使用HashMap集合存储元素,要保证元素的唯一性,需要依赖于元素的两个方法一个是hashCode方法一个是equals方法 ; 只需要让元素重写hashCode方法和equals方法即可 ; 我们可以使用eclipse中的快捷键生成出来 , shift + alt + s ; h + en 阅读全文

posted @ 2017-02-16 20:08 LoaderMan 阅读(226) 评论(0) 推荐(0)

TreeMap
摘要:* 特点: 可以对元素进行排序 , 而排序分为两种方式 1. 自然排序 2. 比较器排序 那么我们到底使用的是自然排序还是比较器排序 , 取决于我们在创建TreeSet集合对象的时候所选定的构造方法 如果我们选择是无参的构造方法,那么我们使用的就是自然排序 , 如果我们选择的是接收一个Compara 阅读全文

posted @ 2017-02-16 20:08 LoaderMan 阅读(178) 评论(0) 推荐(0)

Map
摘要:特点: 属于双列集合 , 键是唯一的, 值可以重复 ; Map 集合的数据结构之和键有关系 功能: 添加功能 * V put(K key,V value):添加元素。 * 如果键是第一次存储,就直接存储元素,返回null * 如果键不是第一次存在,就用值把以前的值替换掉,返回以前的值 删除功能 * 阅读全文

posted @ 2017-02-16 20:07 LoaderMan 阅读(147) 评论(0) 推荐(0)

List&Set
摘要:List a.普通for循环, 使用get()逐个获取 b.调用iterator()方法得到Iterator, 使用hasNext()和next()方法 c.增强for循环, 只要可以使用Iterator的类都可以用 d.Vector集合可以使用Enumeration的hasMoreElements 阅读全文

posted @ 2017-02-16 20:07 LoaderMan 阅读(165) 评论(0) 推荐(0)

LinkedHashSet
摘要:特点: 有序 , 唯一 底层的数据结构为: 链表和哈希表 , 链表保证有序 , 哈希表保证唯一 阅读全文

posted @ 2017-02-16 20:06 LoaderMan 阅读(222) 评论(0) 推荐(0)

TreeSet
摘要:排序:指定按照某种算法对运行进行排序 有序:指的是存储顺序和取出的顺序一致 特点: 可以对元素进行排序 , 而排序分为两种方式 1. 自然排序 * TreeSet类的add()方法中会把存入的对象提升为Comparable类型 * 调用对象的compareTo()方法和集合中的对象比较 * 根据co 阅读全文

posted @ 2017-02-16 20:06 LoaderMan 阅读(151) 评论(0) 推荐(0)

HashSet
摘要:底层依赖于HashMap 原理:保证元素的唯一性依赖于二个方法,一个是hasCode()方法一个是equals方法, 先执行hashCode方法,当hashCode 方法返回值是一样的时候才会执行equals方法,当我们没有重写hashCode方法的时候那么使用的就是object类中的hashCod 阅读全文

posted @ 2017-02-16 20:05 LoaderMan 阅读(224) 评论(0) 推荐(0)

List三个子类的特点
摘要:List的三个子类的特点 ArrayList: 底层数据结构是数组,查询快,增删慢。 线程不安全,效率高。 Vector: 底层数据结构是数组,查询快,增删慢。 线程安全,效率低。 Vector相对ArrayList查询慢(线程安全的) Vector相对LinkedList增删慢(数组结构) Lin 阅读全文

posted @ 2017-02-16 20:04 LoaderMan 阅读(3356) 评论(0) 推荐(0)

set
摘要:特点: 无序 , 元素唯一 , 每一个元素不存在整数索引 ; 遍历方式存在两种: 增强for循环 , 迭代器遍历 阅读全文

posted @ 2017-02-16 20:04 LoaderMan 阅读(133) 评论(0) 推荐(0)

三种迭代是否可以删除
摘要:普通for循环,可以删除,但是索引要-- 迭代器,可以删除,但是必须使用迭代器自身的remove方法,否则会出现并发修改异常 增强for循环不能删除 阅读全文

posted @ 2017-02-16 20:03 LoaderMan 阅读(244) 评论(0) 推荐(0)

LinkedList
摘要:底层的数据结构是链表 , 查询慢 , 增删快 ; 线程不安全效率高 阅读全文

posted @ 2017-02-16 20:02 LoaderMan 阅读(115) 评论(0) 推荐(0)

1 2 下一页

导航