【Java探索之旅】数组概念与初始化指南:动静结合

慈云数据 6个月前 (05-13) 技术支持 54 0
个人头像 🎥 屿小夏 : 个人主页 🔥个人专栏 : Java编程秘籍 🌄 莫道桑榆晚,为霞尚满天!

文章目录

  • 📑前言
  • 一、初识数组
    • 1.1 为什么要有数组?
    • 1.2 数组的的概念
    • 二、数组的创建及初始化
      • 2.1 数组的创建
      • 2.2 数组的初始化
      • 2.3 注意要点
      • 🌤️全篇总结

        📑前言

        数组是一种强大且常用的数据结构,它为我们提供了一种有效的方式来存储和管理大量相同类型的数据。通过数组,我们可以避免重复定义大量的变量,使代码更加简洁和高效。本文将带您深入探索数组的创建和初始化方法,帮助您更好地理解和运用数组在编程中的重要性和灵活性

        一、初识数组

        1.1 为什么要有数组?

        现在假设有五名同学的体育期末成绩,要将其存储起来你会怎么存?在你不了解数组的时候,你的代码可能是这样写的:

        public static void main(String[] args){
            int score1 = 70;
            int score2 = 80;
            int score3 = 85;
            int score4 = 60;
            int score5 = 90;
            System.out.println(score1);
            System.out.println(score2);
            System.out.println(score3);
            System.out.println(score4);
            System.out.println(score5);
        }
        

        这样的代码是不存在错误的,但是存在了许多的重复,你需要不停的定义int类型和变量名,当少数只有几个数据的时候,你写的话可能还行,但是如果是30个、50个、100个同学的成绩要存起来呢?

        大量的重复,你一定会敲到怀疑人生。

        观察上述代码你会发现,这些数据的类型都是统一的,没有其他的类型掺杂。

        这个时候我们就需要用到数组了。

        1.2 数组的的概念

        数组:可以将其看成一组相同类型数据的集合。并且在内存中是一块连续的空间。

        在这里插入图片描述

        这是一张简易的车库图,图中有每个车位的编号,并且都是连续的。(数组就好比这张图,连续存储统一的数据)

        二、数组的创建及初始化

        2.1 数组的创建

        T[] 数组名 = new T[N];  
        
        • T:表示数组中存放元素的类型
        • T[]:表示数组的类型
        • N:表示数组的长度
          int[] array1 = new int[10]; // 创建一个可以容纳10个int类型元素的数组
          double[] array2 = new double[5]; // 创建一个可以容纳5个double类型元素的数组
          String[] array3 = new double[3]; // 创建一个可以容纳3个字符串元素的数组
          

          2.2 数组的初始化

          动态初始化:

          在创建数组时,直接指定数组中元素的个数

          int[ ] array = new int[10];
          

          静态初始化:

          在创建数组时不直接指定数据元素个数,而直接将具体的数据内容进行指定

          语法格式:T[] 数组名称 = {data1, data2, data3, …, datan};

          int[] array1 = new int[]{0,1,2,3,4,5,6,7,8,9};
          double[] array2 = new double[]{1.0, 2.0, 3.0, 4.0, 5.0};
          String[] array3 = new String[]{"hell", "Java", "!!!"};
          

          2.3 注意要点

          • 静态初始化虽然没有指定数组的长度,编译器在编译时会根据{}中元素个数来确定数组的长度。
          • 静态初始化时, {}中数据类型必须与[]前数据类型一致。
          • 静态初始化可以简写,省去后面的new T[]。
            // 注意:虽然省去了new T[], 但是编译器编译代码时还是会还原
            int[] array1 = {0,1,2,3,4,5,6,7,8,9};
            double[] array2 = {1.0, 2.0, 3.0, 4.0, 5.0};
            String[] array3 = {"hell", "Java", "!!!"};
            
            • 数组也可以按照如下C语言个数创建,不推荐

              该种定义方式不太友好,容易造成数组的类型就是int的误解[]如果在类型之后,就表示数组类型,因此int[]结合在一块写意思更清晰

              int arr[] = {1, 2, 3};
              
              • 静态和动态初始化也可以分为两步,但是省略格式不可以

                注意省略格式不可以拆分, 否则编译失败

                int[] array1;
                array1 = new int[10];
                int[] array2;
                array2 = new int[]{10, 20, 30};
                //下列初始化会报错
                int[] array3;
                array3 = {1, 2, 3};
                
                • 如果没有对数组进行初始化,数组中元素有其默认值

                  如果数组中存储元素类型为基类类型,默认值为基类类型对应的默认值,比如:

                  如果数组中存储元素类型为引用类型,默认值为null

                  类型默认值
                  byte0
                  short0
                  int0
                  long0
                  float0.0f
                  double0.0
                  char/u0000
                  booleanfalse

                  🌤️全篇总结

                  数组作为编程中不可或缺的数据结构,为我们提供了一种便捷且高效的方式来存储和操作大量数据。通过动态初始化和静态初始化,我们可以灵活地创建和初始化数组,满足不同场景下的需求。在使用数组时,我们需要注意数据类型的一致性、初始化的方式选择以及数组元素的默认值等细节,以确保代码的正确性和可读性

                  在这里插入图片描述

微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon