首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏兜兜毛毛

    Java集合---HashMap(6

    存储Key—value形式数据,在JDK1.7时撞库使用链表,在1.8中对HashMap撞库情况进行优化,使用链表与红黑树对撞库进行优化

    43410发布于 2019-10-23
  • 来自专栏全栈程序员必看

    java集合面试题_Java集合类相关面试题

    1、Collection和Collections的差别 java.util.Collection 是一个集合接口,Collection接口在Java类库中有非常多详细的实现。 比如List、Set java.util.Collections 是针对集合类的一个帮助类,它提供了一系列的静态方法实现对各种集合的搜索、排序、线程安全化等操作。 它们都是有序集合。它们内部的元素都是能够反复的,都能够依据序号取出当中的某一元素。 它们两个的差别在于: (1)、线程安全的问题:Vector是早期Java就有的,是同意多线程操作的。 (2)、HashMap同意空的key和value HashTable不同意 6、List与Map的差别 List是存储单列数据的集合,Map是存储key和value这样双列数据的集合,List中存储的数据是有顺序的 另外还是以获得全部key的集合和全部value的集合。还能够获得key和value组成 的Map.Entry对象的集合

    42110编辑于 2022-09-08
  • 来自专栏全栈程序员必看

    Java集合面试题

    Java集合面试题 Java 集合框架的基础接口有哪些? Collection ,为集合层级的根接口。一个集合代表一组对象,这些对象即为它的元素。Java 平台不提供这个接口任何直接的实现。 LinkedList :双向链表(JDK6 之前为循环链表,JDK7 取消了循环)。 有哪些关于 Java 集合框架的最佳实践? 基于应用的需求来选择使用正确类型的集合,这对性能来说是非常重要的。 在 JKD6 中实现是,如果通过无参构造的话,初始数组容量为10,每次通过 copeOf 的方式扩容后容量为原来的 1.5 倍。 Hashtable 是在 Java 1.0 的时候创建的,而集合的统一规范命名是在后来的 Java2.0 开始约定的,而当时其他一部分集合类的发布构成了新的集合框架。

    79021编辑于 2022-07-23
  • 来自专栏JavaEE

    java面试题 --- 集合

    1. java 集合你了解吗? java 集合最顶层接口是 Collection 和 Map; Collection 有三个核心接口,分别是 List,Set,Queue; List 是有序可重复的,它的主要实现类有 ArrayList 什么是集合的快速失败机制? 集合内部会维护一个 modCount 变量,遍历的时候,会判断 modCount 变量的值是否等于期望值,不等就会报并发修改异常。 3. 6. HashMap (jdk1.8) 怎么计算索引的? 当链表长度达到 8,且数组长度达到 64 的时候,就会生成红黑树; 当红黑树节点少于 6 个的时候,又会将红黑树转回链表。 11. HashMap (jdk1.8) 数组什么时候扩容?

    43120编辑于 2021-12-10
  • 来自专栏技术杂货店

    java集合6】——— Iterable接口

    iterable接口 整个接口框架关系如下(来自百度百科): iterable接口其实是java集合大家庭的最顶级的接口之一了,实现这个接口,可以视为拥有了获取迭代器的能力。 Iterable接口出现在JDK1.5,那个时候只有iterator()方法,主要是定义了迭代集合内元素的规范。 内部定义的方法 java集合最源头的接口,实现这个接口的作用主要是集合对象可以通过迭代器去遍历每一个元素。 以发挥多核时代的处理器性能,java默认在集合框架中提供了一个默认的Spliterator实现,底层也就是Stream.isParallel()实现的,我们可以看一下源码: // stream使用的就是 iterable接口,从字面意义来说,就是可以迭代的意思,可以理解为实现这个接口的集合类获得了迭代遍历的能力,同时它也是集合的顶级接口,Collection接口继承了它。

    94220编辑于 2022-02-15
  • 来自专栏全栈程序员必看

    java集合详解和集合面试题

    Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点。这里,我列出了一些关于Java集合的重要问题和答案。 1.Java集合框架是什么?说出一些集合框架的优点? 每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。 Map包含key-value对,它提供抽取key或value列表集合的方法,但是它不适合“一组对象”规范。 6.Iterator是什么? Java1.5并发包(java.util.concurrent)包含线程安全集合类,允许在迭代时修改集合。 (6)尽可能使用Collections工具类,或者获取只读、同步或空的集合,而非编写自己的实现。它将会提供代码重用性,它有着更好的稳定性和可维护性。

    87520编辑于 2022-09-05
  • 来自专栏全栈程序员必看

    java集合面试题

    java集合面试题 1.请聊一下java集合类,以及在实际项目中你是如何用的? 注意说出集合体系,常用类,接口,实现类 加上你所知道的高并发集合类,JUC 在实际项目中引用,照实说就好了 2.集合类是怎么解决高并发中的问题? 线程非全的集合类ArrayList LinkedList HashSet TreeSet HashMap TreeMap 实际开发中我们自己用这样的集合最多,因为一般我们自己写的业务代码中,不太涉及到多线程共享同一个集合的问题 6.集合框架底层的数据结构 7.HashMap和HashTable有何不同? 8.ArrayList和LinkedList有何区别? 9.集合和数组的区别 10.Java集合的快速失败机制 “fail-fast”? 11.遍历一个 List 有哪些不同的方式?每种方法的实现原理是什么? 12.HashSet如何检查重复?

    35320编辑于 2022-09-08
  • 来自专栏kwai

    Java集合(八) 面试题

    HashMap 和 HashTable 的区别(重点) 1,相同点: HashMap 和 HashTable 都是基于哈希表实现的 其内部每个元素都是 key-value 键值对 HashMap 和 HashTable 都实现了 Map、Cloneable、Serializable 接口。 2,不同点: 父类不同:HashMap 继承了 AbstractMap 类,而 HashTable 继承了 Dictionary 类。 空值不同:HashMap 允许空的 key 和 value 值,HashTable

    24580编辑于 2022-01-10
  • 来自专栏FREE SOLO

    Java集合综合面试题

    import java.util.Hashtable; import java.util.Iterator; import java.util.Map; import java.util.Set me = iter.next(); System.out.println(me.getKey()+","+me.getValue()); } } } 面试题 :现在在一个List集合之中保存了多个String对象,要求将这个List集合变为Set集合,而后再将这个Set集合之中的全部数据保存在Map集合的value里面,而Map集合的key使用UUID生成, import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator ; import java.util.List; import java.util.Map; import java.util.Set; import java.util.UUID; public

    86000发布于 2019-04-18
  • 来自专栏全栈程序员必看

    Java集合面试题_java是什么

    Java 中的拷贝 由于java中只有值传递,u2 = u1,拿到的是u1的地址,u2和u1指向的是同一个内存区域,u1改变值,u2也会改变。 CloneNotSupportedException{ UseCloneable u1 = new UseCloneable(); u1.clone(); ------- Exception in thread "main" java.lang.CloneNotSupportedException : com.example.miccommon.collection.UseCloneable at java.lang.Object.clone(Native Method) at com.example.miccommon.collection.UseCloneable.main (UseCloneable.java:16) 实现接口实现拷贝过程 @Data public class UseCloneable implements Cloneable { private int

    32220编辑于 2022-11-04
  • 来自专栏技术杂货店

    java集合6】-- Collection源码解析

    TOC 一、Collection接口简介 collection在java集合中,算是顶级接口,它继承了iterable接口,不能实例化,只能实例化其子类。 之所以需要这样一个接口,是因为java作为面向对象,总是避免不了处理多个对象的情况,要处理多个对象,首先需要容器存储,这个容器就是集合。 Collection集合和数组的区别: 集合长度可以变,数组是定长的 集合存储的元素只能是引用类型,而数组则可以是基本类型 数组只能执行基本操作,而集合功能经过拓展,更加丰富。 其实,这也算是哲学问题,java的类的设计是经过很长时间的考验以及调整形成的,平衡修改以及耦合等各方面的原因,结构更加清晰,维护成本更低,逻辑性更强。 List<Integer> list = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9); list.parallelStream() .forEach(

    72430发布于 2020-11-20
  • 来自专栏全栈技术

    Java中的集合面试题

    其实在看Java源码的时候,作者的很多意图都很费人心思,我能知道他的目标是啥,但是不知道他为何这样写。 INCREMENT/2 (这个常量值是12,除以2就是6,也就是如果当前集合长度小于6)则分配12个长度,如果集合长度大于6则分配当前长度s的一半长度。 5.接下来就是很重要的一个工作,因为删除了一个元素,而且集合整体向前移动了一位,因此需要将集合最后一个元索设置为null,否则就可能内存泄露。 6、重新给成员变量array 和size赋值。 ,键对象不可以重复,值对象可以重复; Set集合中的对象不按照特定的方式排序,并且没有重复对象,但它的实现类能对集合中的对象按照特定的方式排序,例如TreeSet类,可以按照默认顺序,也可以通过实现Java.util.Comparator Java 中ArrayList和Linkedlist区别?

    65620发布于 2021-08-23
  • 来自专栏Java技术栈

    Java Map集合面试题汇总

    1、 你都知道哪些常用的Map集合2、Collection集合接口和Map接口有什么关系? 3、HashMap是线程安全的吗?线程安全的Map都有哪些?性能最好的是哪个? 6、怎么按添加顺序存储元素?怎么按A-Z自然顺序存储元素?怎么自定义排序? 7、HashMap的链表结构设计是用来解决什么问题的? 8、HashMap的键、值可以为NULL吗?HashTable呢?

    1.6K60发布于 2018-03-30
  • 来自专栏CSDNToQQCode

    常用Java面试题 List集合

    版本之后的获取头,获取尾 List接口特有方法 增 add(index,element) 在指定索引的位置上插入元素 addAll(index,Collection) 在指定的引的位置上插入整个集合的元素 addAll(Collection) 在结束插入整个集合的元素 删 remove(index) 改 set(index,element) 使用element替换指定索引位置上的元素 查

    27310编辑于 2022-11-28
  • 来自专栏拭心的安卓进阶之路

    Java 集合深入理解(6):AbstractList

    它实现了 List 的一些位置相关操作(比如 get,set,add,remove),是第一个实现随机访问方法的集合类,但不支持添加和替换。 toIndex-fromIndex; i<n; i++) { it.next(); it.remove(); } } 5.addAll(int,Collection 两种内部迭代器 与其他集合实现类不同 比如遍历,实现了 RandomAccess 的集合使用 get(): for (int i=0, n=list.size(); i < n; i++) list.get(i); List 家族在 AbstractList 的指导下出了几个英豪,成为了 Java 世界的栋梁之才,具体细节,我们下回再续。

    1.1K100发布于 2018-01-05
  • 来自专栏猫头虎博客专区

    Java集合常见面试题汇总

    Java集合常见面试题汇总 1. 、元素内容不允许重复; Map集合: (1) Map以键值对形式存储(key-value)。 执行原理:当一个对象往 HashSet集合中存储时,先调用当前对象的 hashCode方法,获取对应存储下标(为了保证内容相同的对象不添加 到HashSet集合中,通常将 hashCode方法给与覆盖 JDK1.2版本,线程不安全,并发效率快,允许null作为 key/value (2) Hashtable: JDK1.0版本,线程安全,并发效率低,不允许null作为 key/value 6. 简述 Java集合框架

    24010编辑于 2024-04-07
  • 来自专栏Java研发军团

    Java面试题-集合框架篇三

    Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Map interface的一个实现。 就HashMap与HashTable主要从三方面来说: 一.历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现 其实,并不是把这个对象本身存储进了集合中,而是在集合中用一个索引变量指向这个对象,当这个对象被add多次时,即相当于集合中有多个索引指向了这个对象,如图x所示。 6、说出ArrayList,Vector,LinkedList的存储性能和特性 ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素。 map可以返回三个集合,一个是返回所有的key的集合,另外一个返回的是所有value的集合,再一个返回的key和value组合成的EntrySet对象的集合. map也有get方法,参数是key,返回值是

    70430发布于 2019-08-20
  • 来自专栏陈树义

    Java集合常见面试题集锦

    1、介绍Collection框架的结构 集合Java中的一个非常重要的一个知识点,主要分为List、Set、Map、Queue三大数据结构。 它们在Java中的结构关系如下: Collection接口是List、Set、Queue的父级接口。 Set接口有两个常用的实现类:HashSet和TreeSet。 第一种,实现Comparable接口: package com.chanshuyi.comparable; import java.util.*; public class Student implements 它们的不同点主要在三个方面: 第一,Hashtable是Java1.1的一个类,它基于陈旧的Dictionary类。而HashMap是Java1.2引进的Map接口的一个实现。 6、List、Map、Set三个接口,存取元素时,各有什么特点? List与Set具有相似性,它们都是单列元素的集合,所以,它们有一个功共同的父接口,叫Collection。

    1K50发布于 2018-04-13
  • 来自专栏Vincent-yuan

    Java集合框架常见面试题

    剖析面试最常见问题之 Java 集合框架 1.1. 集合概述 1.1.1. Java 集合概览 1.1.2. 说说 List,Set,Map 三者的区别? 1.1.3. 剖析面试最常见问题之 Java 集合框架 1.1. 集合概述 1.1.1. Java 集合概览 从下图可以看出,在 Java 中除了以 Map 结尾的类之外, 其他类都实现了 Collection 接口。 并且,以 Map 结尾的类都实现了 Map 接口。 ? 1.1.2. 但是集合提高了数据存储的灵活性,Java 集合不仅可以用来存储不同类型不同数量的对象,还可以保存具有映射关系的数据。 1.2. Collection 子接口之 List 1.2.1. obj)方法用来排序 comparator接口实际上是出自 java.util 包它有一个compare(Object obj1, Object obj2)方法用来排序 一般我们需要对一个集合使用自定义排序时

    85621发布于 2021-08-13
  • 来自专栏全栈程序员必看

    redis面试必会6题经典(redis集合面试题)

    Redis 面试题 1、什么是 Redis?. 2、Redis 的数据类型? 3、使用 Redis 有哪些好处? 4、Redis 相比 Memcached 有哪些优势? 6、Redis 是单进程单线程的? 7、一个字符串类型的值能存储最大容量是多少? 8、Redis 的持久化机制是什么?各自的优缺点? 答:Redis 支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及 zsetsorted set:有序集合)。 答:Jedis 是 Redis 的 Java 实现的客户端,其 API 提供了比较全面的 Redis 命令的支持;Redisson 实现了分布式和可扩展的 Java 数据结构,和 Jedis 相比,功能较为简单 集合(Set)和有序集合(Sorted Set)也使得我们在执行这些操作的时候变的非常简单,Redis 只是正好提供了这两种数据结构。

    15.2K21编辑于 2022-07-31
领券