JavaSE-Arrays工具类

Arrays

作用

用于操作数组的工具类。里面都是静态方法。

常用函数

toString

int[] arr = {
     2,4,5};

	System.out.println(Arrays.toString(arr));

asList

作用

将数组变成list集合

范例

List<String> list = Arrays.asList(arr);
sop("contains:"+list.contains("cc"));

把数组变成list集合有什么好处?

可以使用集合的思想和方法来操作数组中的元素。

注意:将数组变成集合,不可以使用集合的增删方法。
因为数组的长度是固定。
准换成list支持的操作:
contains。
get
indexOf()
subList();

不支持add() remove():如果你增删。因为是由定长的数组转换来的,执行这些操作会出现UnsupportedOperationException

转换后的泛型

  1. 如果数组中的元素都是对象。那么变成集合时,数组中的元素就直接转成集合中的元素。
  2. 如果数组中的元素都是基本数据类型,那么会将该数组作为集合中的元素存在。
范例
	Integer[] nums = {
     2,4,5};

		
		List<Integer> li = Arrays.asList(nums);



int[] nums = {
     2,4,5};

		
		List<int[]> li = Arrays.asList(nums);

集合转数组

指定类型的数组到底要定义多长呢?

  1. 当指定类型的数组长度小于了集合的size,那么该方法内部会创建一个新的数组。长度为集合的size。
  2. 当指定类型的数组长度大于了集合的size,就不会新创建了数组。而是使用传递进来的数组。所以创建一个刚刚好的数组最优。

为什么要将集合变数组?

为了限定对元素的操作。不需要进行增删了。

使用范例

public static void main(String[] args) 
	{
     
		ArrayList<String> al = new ArrayList<String>();

		al.add("abc1");
		al.add("abc2");
		al.add("abc3");
		

		String[] arr = al.toArray(new String[al.size()]);

		System.out.println(Arrays.toString(arr));



	}

你可能感兴趣的:(JavaSE,java,数据结构,编程语言)