数组创建的5种方式

数组创建的5种方式

一维数组的声明方式

  1. 语法结构

    数据类型[] 数组名称 = new 数据类型[数组的长度];(动态方式)

    数据类型 数组名称[] = new 数据类型[数组的长度];(不推荐)

  2. 代码实现

            // 1.使用声明的方式的创建数组一维数组
            int[] iArr = new int[5];
            int iArr1[] = new int[5];
    
  3. 这两种方式的区别

    1. 以上两种方式从结果上来说是一样的,第二种声明方式和变量的声明区分,进而提高代码的可读性

      数组的长度可以是一个整形变量 如果是变量时 变量的值 > 0 ;

数组声明的同时进行初始化(静态方式)

  1. 语法结构

    数据类型[] 数组名称 = {初始值1, 初始值2, …};简化写法
    数据类型[] 数组名称 = new 数据类型[] {初始值1, 初始值2, …}; 原始写法

  2. 代码实现

            // 2.数组的声明的通时进行初始化
            int[] iArrs = new int[]{
          
          1,2,3};
            int[] iArrs1 = {
          
          1,2,3};
    

数组的创建通过匿名内部类

  1. java8提供了大量的功能函数 由于创建数组需要返回值和数组长度 所以使用Function的函数式接口

            // 3.数组的创建通过匿名内部类
            Function<Integer,Integer[]> function = new Function<Integer, Integer[]>() {
          
          
                @Override
                public Integer[] apply(Integer integer) {
          
          
                    return new Integer[integer];
                }
            };
            // 3.1数组的创建
            Integer[] iArra = function.apply(5);
    
  2. 注意事项

    使用函数式接口创建数组 传入参数会自动包装

    使用数组和使用上面里上面两种方式相同

数组创建通过Lambda表达式

  1. 数组的创建可以使用功能函数 也就是可以使用Lambda表达式进行简化

  2. 代码实现

    
            // 4.数组创建通过Lambda表达式其实就是匿名内部类的简化
            Function<Integer, Integer[]> function1 = integer -> new Integer[integer];
            // 4.1数组的创建
            Integer[] iArra1 = function1.apply(5);
    

数组创建通过引用方法的方式创建数组

  1. 代码实现

            // 5.数组创建通过方法的引用创建
            Function<Integer, Integer[]> function2 = Integer[] :: new;
            // 5.1数组的创建
            Integer[] iArra2 = function2.apply(5);
    

Supongo que te gusta

Origin blog.csdn.net/Junsunnyl/article/details/120061094
Recomendado
Clasificación