Java——集合框架 工具

来源:互联网 发布:网络上赌博算不算诈骗 编辑:程序博客网 时间:2024/06/07 10:20

/*

 * Arrays工具类的使用

 */

public class ArraysTest

{

public static void main(String[] args)

{

// TODO Auto-generated method stub

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

//将数组中的所有元素 都打印出来 

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

//asList将数组转成集合

/*

 * 好处:  其实可以使用集合的方法操作数组中的元素 。

 * 注意:  数组的长度是固定的,所以对于集合的增删方法是不可以使用的。。。否则发生异常。

 */

String[] strs = {"alskd""lskdfl""skdjflskd""yangchao"};

List<String> list = Arrays.asList(strs);

boolean b = list.contains("yangchao");

System.out.println(b);

/*

 * 如果数组中的元素时对象,那么转成集合时,直接将数组中的元素作为集合中的元素进行 集合存储

 * 如果数组中的元素是基本类型 数值时,那么会将该数组作为集合中的元素进行存储。

 */

int []a = {23, 42, 35};

List list2 = Arrays.asList(a);

System.out.println(list2);

/*

 * 集合转为数组。

 * 

 * 使用的就是Collection接口中的toArray方法。

 */

List<String> list3 = new ArrayList<String>();

list3.add("yangchao");

list3.add("liuyaun");

/*toArray方法需要传入一个指定类型的数组

 * 如果长度小于集合的size时,那么该法会创建一个同类型的  并和集合相同的size的数组。

 * 如果该长度大于集合的size时,那么该方法就会使用指定的数组,存储集合中的元素,  其他位置默认为null。

 */

String[] str3 = list3.toArray(new String[list3.size()]);

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

}

//toString的经典实现

public static String toString(int[] a)

{

if (a == null)

return "null";

int iMax = a.length - 1;

if (iMax == -1)

return "[]";

StringBuilder b = new StringBuilder();

b.append('[');

for (int i = 0;; i++)//中间省略了长度判断  提高了效率

{

b.append(a[i]);

if (i == iMax)

return b.append(']').toString();

b.append(", ");

}

}

}


===================================================================


//使用可变参数

/*函数的可变参数。

 * 其实就是一个数组,但是接收的是数组的元素。

 * 自动将这些元素封装成数组,简化了调用者的书写。

 * 

 * 注意:可变参数类型必须定义在参数列表的结尾出

 */

public static int Add(int...arr)

{

int sum = 0;

for (int i = 0; i < arr.length; i++)

{

sum+=arr[i];

}

return sum;

}



0 0