2019/07/17的java准备

本文详细介绍了Java集合框架的组成部分,包括Collection和Map接口的区别及应用,重点对比了List和Set接口的不同实现类如ArrayList、LinkedList、HashSet和TreeSet的特点与适用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 早上查题,背一遍然后检查自己一遍以上
  • 中午有时间就背一遍以复习昨天的为主
  • 晚上背一遍,第二天中午再看一眼:day+1
  • 第四天课间看一遍:day+3
  • 第七天课间看一遍:day+6
  • 第十五天课间看一遍:day+14

集合与数组区别
数组也是容器,定长,访问较快; 集合不需要固定长度,自动扩充
数组容器元素的类型是统一的;集合中可以存放任意类型的数据


集合的框架
Java的集合框架 从整体上可以分为两种:
1、Collection接口:该接口下的所有子孙均存储的是单一对象
2、Map接口 :该接口下的所有子孙均存储的是key-value(键值对)形式的数据

另外还有三个分支,均是为上述服务的。
Iterator(迭代器):主要用于遍历Colleciton接口的及其子类而设计。
Comparator(比较器): 在集合中存储对象时候,用于对象之间的比较
Collecitons 是工具类:注意该类名带个s,一般就表示工具类。里面提供了N多静态方法,来对Colleciton集合进行操作。

在这里插入图片描述


Collections 和Collection的区别
1、Collection是线性集合的父接口,继承与他有关的接口主要有List和Set

2、Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全等操作


List接口
下有三个实现类。Arraylist,linkedlist ,Vextor已淘汰

  • Collection的子接口List - 有序的集合;允许重复
    • ArrayList
    • LinkedList

List接口两个实现类的区别
ArrayList
1.ArrayList是线性顺序存储的,是一种线性表
2.它的特性和数组很接近,数组大小是不变的,而ArrayList的大小是可以动态改变的
LinkedList
1.是数据结构中链表的java实现
2.相对于List来说,LinkedList最主要的功能方面的增强是可以在List的头部和尾部添加、删除、取得元素,直接提供了这些方法的实现。


Set接口,下有两个实现类

  • Collection的子接口List ,无序的集合;不允许重复
    下有两个实现类
  • ArrayList
  • LinkedList

Set接口的实现类 HashSet、TreeSet区别
HashSet — HashSet的特性在于其内部对象的散列存取,即采用哈希技术
TreeSet — TreeSet输入的顺序跟存储的顺序不同,但是存储是按照排序存储的(自动把输入的分好再存)


TreeSet的特别之处
1.TreeSet里不能放null,唯一不能放null的集合
2.compareable接口要求,集合中要么全是String要么全是整形要么全是自定义的,必须是同一类的。如果是自定义的必须是继承comparable接口的,而且要重写compare方法,使TreeSet有排序的依据。不是自定义的类型也可以用匿名内部类来重写排序方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值