
list hash 链表 数组 迭代器 Map
list hash 链表 数组 迭代器 Map
dxyzhbb
这个作者很懒,什么都没留下…
展开
-
数据结构 Hash表(哈希表)
一、什么是Hash表要想知道什么是哈希表,那得先了解哈希函数哈希函数对比之前博客讨论的二叉排序树 二叉平衡树 红黑树 B B+树,它们的查找都是先从根节点进行查找,从节点取出数据或索引与查找值进行比较。那么,有没有一种函数H,根据这个函数和查找关键字key,可以直接确定查找值所在位置,而不需要一个个比较。这样就**“预先知道”**key所在的位置,直接找到数据,提升效率。即地址index...转载 2019-12-27 11:35:00 · 276 阅读 · 0 评论 -
map 和 treemap的区别
HashMap通过hashcode对其内容进行快速查找,而 TreeMap中所有的元素都保持着某种固定的顺序,如果你需要得到一个有序的结果你就应该使用TreeMap(HashMap中元素的排列顺序是不固定的)。HashMap 非线程安全 TreeMap 非线程安全线程安全在Java里,线程安全一般体现在两个方面:1、多个thread对同一个java实例的访问(read和modify)不会相...转载 2019-12-27 11:09:49 · 1366 阅读 · 0 评论 -
JAVA中ListIterator和Iterator详解与辨析
在使用Java集合的时候,都需要使用Iterator。但是java集合中还有一个迭代器ListIterator,在使用List、ArrayList、LinkedList和Vector的时候可以使用。这两种迭代器有什么区别呢?下面我们详细分析。这里有一点需要明确的时候,迭代器指向的位置是元素之前的位置。首先看一下Iterator和ListIterator迭代器的方法有哪些。Iterator迭代器...转载 2019-12-27 10:49:48 · 126 阅读 · 0 评论 -
Java中Iterator用法整理
一、迭代器简介(Iterator)迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。Java中的Iterator功能比较简单,并且只能单向移动:(1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注...转载 2019-12-27 10:03:55 · 123 阅读 · 0 评论 -
链表的原理及java实现
一:单向链表基本介绍链表是一种数据结构,和数组同级。比如,Java中我们使用的ArrayList,其实现原理是数组。而LinkedList的实现原理就是链表了。链表在进行循环遍历时效率不高,但是插入和删除时优势明显。下面对单向链表做一个介绍。单向链表是一种线性表,实际上是由节点(Node)组成的,一个链表拥有不定数量的节点。其数据在内存中存储是不连续的,它存储的数据分散在内存中,每个结点只能也...转载 2019-12-27 09:45:51 · 1272 阅读 · 0 评论 -
lists.newarraylist()和new arraylist() 区别
lists.newarraylist():List list = new ArrayList();new arraylist() :List list = Lists.newArrayList();Lists和Maps是两个工具类, Lists.newArrayList()其实和new ArrayList()几乎一模一样, 唯一它帮你做的(其实是javac帮你做的), 就是自动推导(不是"...转载 2019-12-26 15:53:56 · 4131 阅读 · 0 评论 -
关于arrayList的add和addall
花了一周时间,重构了系统中最重要的一段下发打印逻辑的代码,理清了各类型间的调用关系,得意之际,测试告诉代码数据异常了,花了5个小时的测试,终于发现了问题,用错了ArrayList的addAll方法,下面列举下add和addAll方法。ArrayList是一个实现可变长数组,继承AbstractList类,实现所有的List接口,还实现了RandomAccess、Cloneable、Seriali...转载 2019-12-26 15:53:20 · 892 阅读 · 1 评论 -
java如何向数组里添加元素
java篇哇,菜鸟第一次写这个东西,当加深印象,大佬们请略过,欢迎有错指出。向数组里添加一个元素怎么添加,这儿总结有三种方法:1、一般数组是不能添加元素的,因为他们在初始化时就已定好长度了,不能改变长度。但有个可以改变大小的数组为ArrayList,即可以定义一个ArrayList数组,然后用add(element)方法往里添加元素即可,还可add(index,element)往指定下标处...转载 2019-12-06 11:41:34 · 15998 阅读 · 0 评论 -
Java中Iterator用法整理
一、迭代器简介(Iterator)迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构。迭代器通常被称为“轻量级”对象,因为创建它的代价小。Java中的Iterator功能比较简单,并且只能单向移动:(1) 使用方法iterator()要求容器返回一个Iterator。第一次调用Iterator的next()方法时,它返回序列的第一个元素。注...转载 2019-10-17 11:24:51 · 1175 阅读 · 0 评论 -
java中list集合中contains()的用法,啥意思
1、java中list集合中contains()的用法为:public boolean list.contains(Object o)意思为:当前列表若包含某元素,返回结果为true, 若不包含该元素,返回结果为false。2、contains()方法实现的具体细节为:当list调用contains()方法并传递一个元素时,会执行遍历,逐个对比item是否等于该元素,当遍历结束后,如果还没...转载 2019-10-11 14:47:07 · 89476 阅读 · 0 评论