首页 技术 正文
技术 2022年11月17日
0 收藏 771 点赞 4,715 浏览 1210 个字

collection

集合体系

  • 数据结构栈和队列
    栈结构 :先进后出
    队列结构 :先进先出
  • 数据结构之数组和链表
    数组结构:查询快、增删慢
    队列结构 :查询慢、增删快
  • List集合概述
    有序集合(也称为序列),用户可以精确控制列表中每个元素的插入位置。用户可以通过整数索引访问元素,并搜索列表中的元素;
    与Set集合不同,列表通常允许重复的元素;
  • List集合特点
    有索引;
    可以存储重复元素;
    元素存取有序 ;

collection体系

list

q:集合中存放的是什么类型?

引用类型  存的不是对象,而是对象的引用类型,存入int型的也会自动装配成integer

q:ArrayList和linkedList区别?

ArrayList特点:结构实现,查询慢、增删快

linkedList特点: 底层是链表结构实现,查询慢、增删快

set

  • hashSet集合的特点
    元素存取无序
    没有索引、只能通过迭代器或增强for循环遍历,不能存储重复元素

    哈希值 :是JDK根据对象的地址或者字符串或者数字算出来的int类型的数值

hashSet唯一性保证原理

  • TreeSet集合概述
    元素有序,可以按照一定的规则进行排序,具体排序方式取决于构造方法
    TreeSet():根据其元素的自然排序进行排序
    TreeSet(Comparator comparator) :根据指定的比较器进行排序
    没有带索引的方法,所以不能使用普通for循环遍历
    由于是Set集合,所以不包含重复元素的集合

Q: hashset 和Treeset 的区别是?

hashset 基于哈希表实现,无序,不重,可以放入一个null值

treeset 基于二叉树实现,有序,不重, 不允许为空

Q:HashSet是如何保证元素唯一性的呢?

是通过元素的两个方法,hashCode和equals来完成。

Q:TreeSet是如何保证元素唯一性的呢?

底层数据结构是二叉树,使用二叉树的compareTo方法return 0.

Q:Comparable和Comparator区别?

Comparator位于包java.util下需要元素对象实现Comparable接口,覆盖compareTo方法

Comparable位于包   java.lang下Comparable,需要元素对象实现Comparable接口,覆盖compareTo方法。

Q:List、Map、Set三个接口,存取元素时,各有什么特点?

List  以特定次序来持有元素,可有重复元素;

Set  无法拥有重复元素,内部排序(无序);

Map 保存key-value值,value可多值。

map

map体系

  • Map集合概述

interface Map<K,V> K:键的类型;V:值的类型

  • Map集合的特点
    键值对映射关系
    一个键对应一个值
    键不能重复,值可以重复
    元素存取无序

Q: HashMap和Hashtable的区别?

Hashtable是线程安全的 不可以存入null键null值

HashMap线程不安全  可以存入null键null值

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,105
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,582
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,429
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,200
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,836
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,919