Java集合

Collection和iterator接口

iterator接口方法

booleanhasNext() 是否还有下一个元素

Next() 返回下一个元素

remove() 删除当前元素

 

Collection接口

 

Collection接口提供了添加、删除元素

collection接口是List接口和set接口的父接口,通常情况下不能被直接使用

List接口允许存放重复的对象和元素,排序方式为对象的插入顺序

Set接口不允许存放重复的对象,排序方式为自身内部排序

Map接口以键值对(key-value)的形式存放对象,其中(key)对象不可以重复,值对象可以重复,排序方式为自身内部的规则

collection接口是List接口和Set接口的父接口

List接口和Set接口的方法通用

boolean add(Object obj):一次性添加一个元素

boolean addAll(Object obj):将一个参数容器中所有元素添加

boolean remove(Object obj):删除一个指定的对象或元素

boolean removeAll(Collection):删除指定Collection中和conllection中相同的元素

void clear():直接将集合中的元素清空

boolean contains(Object obj):是否包含指定元素

boolean containsAll(Collection) 是否包含指定容器中的元素

boolean itEmpty():判断是否有元素

int size() :获取元素有几个

boolean retainAll(Collection):保留和指定元素中相同的元素。不相同的元素会被删除

Object[] toArray():将集合转换成数组

toArray():将集合转换成数组

Iterator iterator()用于取出容器中元素的方式

 

List集合方法

void add(int index,E element),Boolean addAll(int index,Conllection c)

 E get(int index)                //返回列表中指定位置的元素

int indexOf(Object o):         返回列表中第一次出现的元素索引

int lastIndexOf(Object o ):         返回列表中最后出现的元素索引

E remove(int index)                移动元素

E set(int index ,E element) 元素替换

List<E> subList(int fromIndex.int toIndex)返回子列表

 

实现List<E>接口的集合类有ArrayList<E> Vector<E> Stack<E> linkedlist<E>这些类的对象均能调用上述方法,按索引进行元素增删改

Set<E>接口

Set集合为集类型,集是最简单的一种集合,存放与集合的对象不按特定方式排序但Set集合中不能包含重复对象,Set接口继承了Collection接口,也拥有Conllection接口提供的所有常用方法

传入的Collection对象不能有重复值

set接口常用的实现类有HashSet类和TreeSet类

HashSet类

HashSet的排序规则是利用哈希法(Hash)

HashSet根据对象的哈希码确定对象的存储位置

 TreeSet类

TreeSet类实现了Set接口与java.util.sortedSet接口,sortedSet提供了相关的方法保证在遍历集合时按照递增的顺序获得对象,遍历对象时可能按照自然顺序递增排序。

TreeSet类实现了Set接口与java.util.sortedSet接口增加的方法如下。

Comparator():获得对该集合采用的比较器。返回值为Comparator类型,如果未采用任何比较器则返回null

first():返回在集合中排序位于第一位的对象

last():返回在集合中排序位于最后的对象

headSet(E toElement):截取在集合中的排序位于对象toElement(不包括)之前的所有对象

subset(E fromElement,E toelement):截取在集合中排序位于对象fromElement(包括)和对象toElement(不包含)之间的所有对象,重新生成一个set集合并返回

tailSet(E fromElement):截取在集合中排序位于对象fromElement(包括)之后的所有对象,重新生成一个set集合返回并使用

 Queue<E>接口

Queue是一种保证元素处理顺序集合,除了基本的Collection操作外,该接口还提供了自己的插入、访问及删除元素的操作,Queue接口的常用方法如下

boolean offer(E o):如果可能,将指定元素插入此队列

E poll():检索并移除此队列的头,如果此队列为空,则返回null

E remove() 检索并移除此队列的头,此方法和pull方法不同点,此队列为空则抛出异常

E peek():检索,但是不移除此队列的头,如果此队列为空,则返回null

E element:检索,但是不移除此队列的头,此方法与peek方法的唯一不同是,若干此队列为空则抛出异常

集合实用类Collections

集合实用类Conllections提供了一下集合的辅助静态方法

Collections和collection的不同之处在于Collection是集合框架中的一个顶层接口,Collections是集合框架中的一个工具类

Collections一下常用方法

reverseOrder():返回一个比较器

sort(List<T> list,Comparator<? super T> C):根据指定比较器产生的顺序对指定列表排序

shuffle(List<?> list):使用默认随机源对指定列表进行置换

max(Collection<? extends T> coll):根据元素的自然顺序,返回给定Collection最大元素

 min(Collection<? extends T> coll):根据元素的自然顺序,返回给定Collection最小元素

 基本数据类型包装

1、基本数据类型

基本数据

 

 基本数据类型对象包装类的最常见作用,就是用于基本数据类型和字符串类型之间的转换

基本数据类型转换字符串

基本数据类型.toString(基本数据类型值)

Interger.toString(32)     //将32 整数变成“34”

字符串转成基本数据类型,例如

 十进制转换其他进制,例如

其他进制转换成十进制例如

 

 自动装箱和自动拆箱

在java中数据类型可以分为基本数据类型(值类型)和类类型(引用数据类型)两种。基本类型的数值不是对象,不能作为对象调用其toString()、hashCode()、getClass()、equals()等方法,提供基本数据类型的自动装箱、拆箱的功能

装箱

就是把数据类型用他们相对于的引用类型包起来,使他们可以具有对象的特质,例如可以把int型包装成Integer类的对象,或者把double包装成Double等

 

 基本数据类型的数组不实现自动装箱和拆箱,如int[]不能当Integer[]使用

小结

1、由Collection接口派生的两个接口是set接口和list接口

2、Iteration对象是一个集合的迭代器,用以方便地实现对容器内元素的遍历操作

3、ArrayList<E>类实现了可变的数组,允许所有元素,包括,可以根据对集合进行快速访问。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值