• Java——集合框架 工具


    
    /*

     * 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;

    }



    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    Linux安装svn
    spring低版本报错:java.lang.IllegalStateException: Context namespace element ‘annotation-config’ and its parser class [*] are only available on
    linux下nproc的作用
    Oracle存储过程--案例
    Oracle存储过程
    LoadRunner 11 安装
    BZOJ 1061 志愿者招募(最小费用最大流)
    ZOJ 1015 Fishing Net(判断弦图)
    BZOJ 1049 数字序列(LIS)
    topcoder srm 620 div1
  • 原文地址:https://www.cnblogs.com/blogs-chao/p/4764923.html
Copyright © 2020-2023  润新知