Java_集合_Arrays工具类

本博客为子墨原创,转载请注明出处!
http://blog.csdn.net/zimo2013/article/details/8870024

1.Arrays简介

       此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。 除非特别注明,否则如果指定数组引用为 null,则此类中的方法都会抛出NullPointerException。

2.Arrays常见操作

      (1).给数组赋值:通过fill方法。
      (2).对数组排序:通过sort方法,按升序。
      (3).比较数组:通过equals方法比较数组中元素值是否相等。
      (4).查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。
      (5).toString()
      (6).将数组转化为List集合
     List<T> li = Arrays.asList(t);将t数组转化为List集合
     A).如果数组中的元素是基本数据元素,则将该数组作为一个整体,充当List中的一个元素,因为Object是基本数据类型数组的父类
     B).如果。。。。。。是对象,则将数组中的每个元素分别对应List的元素,可以指定泛型类型,如不指定默认为Object
     。。。 详细下面代码!

注意:数组转化为集合后,不可以对数组进行增删操作(UnsupportedOperationException),因为数组长度固定!

/*
数组转化为集合
Strawberry2013-4-30
*/
import java.util.*;

class Demo
{
	public static void main(String[] args)
	{
		/*
		好处:将数组转化为集合后,可以使用集合的思想和方法来操作数组
		*/
		String[] arr = {"cd", "b", "dss"};
		List<String> li = Arrays.asList(arr);
		//li.add("dd");		error
		//数组转化为集合后,不可以对数组进行增删操作(UnsupportedOperationException),因为数组长度已经固定!

		System.out.println(li);	// **********print:[cd, b, dss]
		
		Integer[] in = {1,2,4,3};
		List<Integer> l = Arrays.asList(in);
		System.out.println(l);	// **********print:[1, 2, 4, 3]

		int[] t = {1,2,4,3};
		List<int[]> lis = Arrays.asList(t);
		System.out.println(lis);// **********print:[[I@55e55f]

		/*
		Why?
		1).如果数组中的元素是基本数据元素,则将该数组作为一个整体,充当List中的一个元素;
		2).如果。。。。。。是对象,则将数组中的每个元素分别对应List的元素
		*/
	}
}

你可能感兴趣的:(Arrays,asList)