集合
List集合
List接口中常用方法
List作为Collection集合的子接口,不但继承了Collection接口中的全部方法,而且还增加了一些根据元素索引来操作集合的特有方法,如下:
-
public void add(int index, E element)
: 将指定的元素,添加到该集合中的指定位置上。 -
public E get(int index)
:返回集合中指定位置的元素。 -
public E remove(int index)
: 移除列表中指定位置的元素, 返回的是被移除的元素。 -
public E set(int index, E element)
:用指定元素替换集合中指定位置的元素,返回值的更新前的元素。 -
contains():判断指定值是否存在,存在返回true,不存在返回false
Set集合
特点:存储无序(不再支持索引),不能存储重复数据
Set集合:HashSet,通常用来输出数据的方案:Iterator实现数据的删除和遍历
SET中不能出现重复数据:存放到Set集合的数据,不能满足元素1==元素2或元素1.equals(元素2),set集合将只保存元素1,而不会存储元素2
java.util.HashSet
是Set
接口的一个实现类,它所存储的元素是不可重复的,并且元素都是无序的(即存取顺序不一致)。
HashSet
是根据对象的哈希值来确定元素在集合中的存储位置,因此具有良好的存取和查找性能。保证元素唯一性的方式依赖于:hashCode
与equals
方法。
Map集合
Map<K,V>:存储数据是以键值对的形式存储
HashMap: 键不能重复
put(Object key,Object value),
get(Object key);
remove(Object key);
map集合的数据输出:
1、keyset() key==>value
2、Values()
3、Entryset()
泛型集合
语法:
集合<数据类型> 集合名=new 集合<数据类型>();
支持菱形语法:
集合<数据类型> 集合名=new 集合<>();
泛型通配符
通配符高级使用----受限泛型
之前设置泛型的时候,实际上是可以任意设置的,只要是类就可以设置。但是在JAVA的泛型中可以指定一个泛型的上限和下限。
泛型的上限:
-
格式:
类型名称 <? extends 类 > 对象名称
-
意义:
只能接收该类型及其子类
泛型的下限:
-
格式:
类型名称 <? super 类 > 对象名称
-
意义:
只能接收该类型及其父类型
Collections
常用功能
-
java.utils.Collections
是集合工具类,用来对集合进行操作。部分方法如下: -
public static <T> boolean addAll(Collection<T> c, T... elements)
:往集合中添加一些元素。 -
public static void shuffle(List<?> list) 打乱顺序
:打乱集合顺序。 -
public static <T> void sort(List<T> list)
:将集合中元素按照默认规则排序。 -
public static <T> void sort(List<T> list,Comparator<? super T> )
:将集合中元素按照指定规则排序。