【编程语言】java--常见的集合

来源:互联网 发布:童谣事件知乎 编辑:程序博客网 时间:2024/05/16 15:51
Collections中的fill方法可以把list集合中的所有元素替换成指定元素
replaceOf reverse(list) reverseOrder()
比较器 Comparator 里面有Compare方法
synchronizedList()  synchronizedMap()  synchronizedSet()实现同步 ,传入不同步,返回同步的


Arrays用于操作数组的工具类
asList:将数组编程list集合,可以使用集合的思想操作元素,将数组编程集合,不可以使用集合的增删方法,因为数组的大小是固定的
如果增删会发生不支持操作异常


int[] nums = {2,4,5}
List<int[]> li = Arrays.asList(nums);
如果数组中的元素都是对象,那么编程集合时,数组中的的元素就直接转换成集合中的元素
如果数组中的元素都是基本数据类型,那么编程集合时,整个数组单个转换成集合中的元素


集合变成数组Collection接口中的toArray方法
指定类型的数组要定义多长,当定义的数组的长度小于了集合的size,那么该方法内部会创建一个新的数据,长度为集合的size,
当指定的集合比较大。就用创建的,所以要创建一个刚刚好的数组长度
为什么集合变数组?
为了限定对元素的操作,为了限定功能,不需要进行增删了


高级for循环
只能获取集合元素,但不能对集合进行操作
迭代器出了了、遍历,还可以进行remove操作,如果是listIterator还可进行其他造作
高级for循环有一个局限,必须有被遍历的目标
建议在遍历数组的时候还是使用传统for,可以定义角标


JDK1.5版本出现的新特性 增强for循环,泛型


main()
{
show(2);
show(2,3,4,5)
}


void show(int ... arr)
{
System.out.println();
}


可变参数:其实就是数组参数的简写形式,不用每一次都手动建立数组对象,只要将要操作的元素作为参数传递即可,隐含将这些参数封装成了数组
比如array 里面 asList(T... a)
使用可变参数新特性时:注意可变参数一定要定义在参数数组的最后面,其中类型任意


静态导入:
静态方法可以不写类名
当类名重名是,需要指定具体的包名。当方法重名是,指定具备所属的对象或者类
import java.lang.Syste,.*; 导入了System中所有的静态成员
没有写static导入的是类
带static 导入的是静态成员