zoukankan      html  css  js  c++  java
  • java基础笔记(4)----数组

    1. 介绍:

      数组是一种数据类型,是引用类型,是一块连续的内存空间,用于存储和管理相同类型的多个数据。

    2. 定义:-- > 数组的声明方式
      1. 先声明,在开辟内存空间--> int [] a; a=new int[5];
      2. 声明的同时静态初始化    -- > int[] a={1,3,5}
      3. 声明并开辟内存空间    -- >int [] a=new int[5]
    3. 使用:-- >数组名[下标]:下标的有效范围是:0到长度-1;
      1. 存元素:
      2. 取元素:
      3. 遍历数组:

      代码如下:

    package com.lvsling.test;

    public class Test1 {

        public static void main(String[] args) {

            //定义一个数组

            int[] a=new int[5];

            //存数据

            a[0]=1;

            a[1]=3;

            a[2]=5;

            a[3]=7;

            a[4]=9;

            //取数据

            System.out.println(a[2]);

            System.out.println(a[4]);

            //遍历数组中的元素

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

                System.out.println(a[i]);

            }

            

        }

    }

     

    1. 数组扩容
      1. 创建新数组,
      2. 把原数组中的内容复制到新数组中
      3. 返回新数组

      代码如下:

    package com.lvsling.test;

    /*

    * 扩容

    */

    public class Test2 {

        public static void main(String[] args){

            

                int[] b={1,2,3,4,5};    

                b=expand3(b);

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

                    System.out.println(b[i]);

                }

            }

            //循环将原数组中所有元素逐一赋值给新数组。

            public static int[] expand1(int[] a){

                int[] b=new int[9];

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

                    b[i]=a[i];

                }

                return b;

            }

            //System.arraycopy(元数组,原数组起始,新数组,新数组起始,长度);

            public static int[]expand2(int[] a){

                int[] b=new int[7];

                System.arraycopy(a,1,b,2,3);

                return b;

            }

            //java.util.Arrays.copyOf(原数组,新长度);

            public static int[]expand3(int[] a){

                return java.util.Arrays.copyOf(a,10);

            }

    }

     

    1. 自我总结:

      以上说明了数组的声明,使用,遍历以及数组的扩容。核心就是开辟出内存空间用来存储我们所需的数据。

      拓展与提升:

      1. 数组元素是有默认值的。
        1. 在数组开辟内存空间后,不给元素指定的值,系统会默认分配值。
          1. 整数--------->0
          2. 小数--------->0.0
          3. 布尔--------->false
          4. 字符--------->'u0000'
          5. 引用类型--------->null

      2,二维数组:

          1,是一维数组的数组

      2,开辟内存空间时,至少要指定 行的维数; 

      3,声明的同时 静态初始化 必须在同一行代码中完成;

      4,开辟内存+静态数据 开辟内存时行和列的维数 都不能指定。

  • 相关阅读:
    踩坑纪录——Lombok加Builder注解后mybatis无法识别字段正确类型
    安装node
    PostgreSQL DISTINCT ON
    RabbitMQ安装到使用入门
    springboot整合rabbitMQ时遇到的消息无法入列问题
    不同版本springboot上传文件大小设置
    thymeleaf报错元素类型必须由匹配的结束标记终止
    不同版本springboot端点开启方法
    mybatis匹配字符串的坑
    杂记
  • 原文地址:https://www.cnblogs.com/lvsling/p/8449571.html
Copyright © 2011-2022 走看看