java集合框架(一)

一、认识集合

java集合框架提供了一些类,和接口,他们都位于java.util(工具)包中,也就是通常所说的java集合。

java集合类主要由Map接口Collection接口派生而来的。

Collection接口是最基本的集合接口,可以存储一组不唯一,无序的对象

注意:java集合里面存的是对象!!!

其中,Collection接口有两个常用的子接口:List接口和Set接口。

所以,我们经常会说java集合框架由3大接口组成:Map,List,Set接口。

二、List接口

1.List接口可以存储一组不唯一,有序的对象。表示数据可以重复,而且是有顺序的!

2.List通常常用的实现类是ArrayList和LinkedList类。

3.使用ArrayList类动态储存数据

  • ArrayList是java中针对数组的缺陷,进行对数组的封装,实现了可以长度可变的数组!所以又叫做动态数组。

ArrayList类的一些常用方法:

方法说明
add(Object o)往集合里面添加元素o
add(int index,Object o)在指定位置添加元素0
int size()返回列表中元素的个数
get(int index)返回指定索引位置处的元素,注意取出来的是Obiect类型,使用前要进行强制类型转换
ser(int index,Object obj)将index索引位置处的元素替换成obj元素
Boolean  contians(Object obj)判断列表中是否存在元素o,返回值是booelan,true或者false
int  indexOf(Object obj)返回 元素在集合中出现的索引位置
boolean remove(Object o)从列表中删除元素o
Object remove(int index)从列表中删除指定位置的元素,起始位置从0开始

注意:使用ArrayList类前,需要导包:

import java.util.ArrayList;

import java.util.List;

ArrayList集合常用于:遍历元素(查询)和随机访问元素,效率比较高。

4.使用LinkedList类动态存储数据

LinkedList类是List接口的链表式是实现类、并且允许元素之是任何数据,可以为null.

LinkedList集合类常用于:插入,删除,修改效率比较高,但是查找效率比较低。

LinkedList集合类的常用方法:

方法说明
void addFirst(Object obj)将指定元素插入到集合的第一位
void addLast(Object obj)将指定元素插入到集合的最后一位
Object getFirst()获得当前集合的第一个集合
Object gerLast()

获得当前集合中的最后一个元素

Object removeFirst()删除并返回当前集合中的第一个元素
Object removeLast()删除并返回当前集合的最后一个元素

 

注意:List有序集合中可以有3种遍历方式:

  • 普通for循环
  • 增强for循环
  • iterator迭代器

三、Set接口

1.Set接口是Collection接口中的另外一个常用的子接口,可以存储唯一,无序的对象!

2.常用的实现类有HashSet。HashSet集合类他的

3.使用HashSet类动态存储数据,查找效率高

HashSet集合特点:

  • 集合类的元素是无序排列,不存在get()方法
  • HashSet类是非线程安全的。
  • 允许集合元素值为null.

HashSet类的常用方法:

方法说明
boolean add(Object o)添加指定元素,如果Set中没有就添加,有的话就会覆盖。
void  clear()从Set中移除所有的元素
int size()返回Set中的元素的数量
boolean isEmpty()如果Set中不包含任何元素,则返回true
boolean contains(Object o)如果Set包含指定元素o,则返回true
boolean remove(Object o)如果指定元素o存在于Set中,则将其移除

注意:Set无序集合中有2中遍历循环:

  • 增强for循环
  • iterator迭代器

因为HashSet类不存在get()方法,所以Set接口无法使用普通for循环遍历。

四、Iterator接口

1.iterator接口表示对集合进行迭代的迭代器,它是为集合而生,专门实现集合的遍历。

2.Iterator的用法:

  • hastNest():判断是否存在元素。如果存在,就去迭代,返回true.
  • next():返回要访问的下一个元素。获得元素。

3.凡是由Collection接口派生而来的接口或者类,都实现了iterato()方法,iterator()方法返回一个Iterator对象。

4.实现代码如下:


ArrayList list=new ArrayList();            //创建集合类
list.add("张珊");
 Iterator<Journ> itor = jn.iterator();     	//获得迭代器
	   	// 通过迭代器迭代出集合元素
		while (itor.hasNext()) {             // 判断是否有下一个元素
			Journ title=(Journ)itor.next();	//返回下一个元素,需要强制为Journ类型
			System.out.println(title);
		}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值