【小白学java】D06》》》初识 数组Array

一、了解数组(一维数组)

1、概述:

                数组(array)是一种用于存储多个相同类型数据的存储模型

2、数组的定义格式

   有两种定义格式
   
格式1:
	数据类型[] 变量名
例如:	int[] arr

格式2:
	数据类型 变量名[]
例如:	int arr[]

3、数组的初始化(动态初始化)

初始化 : 为数组中的元素分配存储空间,并为每个数组元素赋值
初始化方式:

`动态初始化`:
     手动指定数组的长度,系统分配数组的默认值(int默认值0,String为null)
       初始化时只会指定数组的长度,而数组的值由系统为数组分配初始值
       格式:数据类型[] 变量名=new 数据类型[数组长度];
       例如:    int[] arr=new int[10];
       
`静态初始化`:
     手动指定数组的元素,系统分配数组的默认长度
	格式:
		数据类型[] 变量名=new int[]{元素1,元素2...元素n};
	简化格式:
		数据类型[] 变量名={元素1,元素2...元素n};
	注意:
		简化格式写法不可分割成两行,否则会报错。

4、数组内存分配

                Java程序在运行时,需要在内存中分配空间,为了提高效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据的方式和内存关系方式

        栈内存
                特点
                 用于存储局部变量,当数据使用完,所占空间会自动释放。
        堆内存
                特点
                 1:存储new出来的内容(实体和内存)。
                 2:每一个实体都有内存地址值。 实体中的变量都有默认初始化值
                 3:实体不再被使用时,会在不确定的时间内被垃圾回收器回收

5、数组的访问

1.访问数组
                 通过数组名称来访问
                 格式:数组名称
2.访问数组中的元素
                 通过索引来访问
                 格式:数组名称[索引/下标/index]

6、索引:数组中元素的标识(行号)

         概述:是数组中元素排序的方式
         作用:用于访问数组中的数据
         特点:
                 1. 索引从0开始
                 2.索引是连续的
                3.索引是逐一增加,每次加1

7、数组遍历的通用格式

for(int i=0;i<=数组.length-1;i++){
	System.out.println(数组[i]);
}

8、数组操作常见问题

(1)数组索引越界

int[] arr = new int[10];
System.out.println(arr[10]);
//访问到了数组中的不存在的索引时报错。

(2)空指针

int[] arr = null;
System.out.println(arr[0]);
//arr引用了没有指向堆内存的数据。

9、求数组中最大值最小值

例如:
int[] arr={1,3,5,6,4,7,9,10,99,56,100,45};其中最大值为100,最小值为1
思考:
1. 首先定义变量用于存储最大值或最小值
2. 初始值为数组中索引为0的元素
3. 与数组中剩余数据逐一比较,每次比较的最大值保存 在变量中
4. 输出结果

        int[] arr={1,3,5,6,4,7,9,10,99,56,100,45};
        int max=arr[0];//最大值
        int min=arr[7];//最小值
        for (int i = 1; i <arr.length ; i++) {
            if(max <arr[i]){
                max=arr[i];
            }
        }
        for (int i = 0; i <arr.length ; i++) {
            if(min >arr[i]){
                min=arr[i];
            }
        }
        System.out.println(max);
        System.out.println(min);
    }

在这里插入图片描述

二、了解二维数组

1、二维数组的定义格式

两种格式
格式1:
	数据类型[][] 变量名
例如:	int[][] arr
格式2:
	数据类型 变量名[][]
例如:	int arr[][]

2、二维数组的初始化(动态初始化)

动态初始化:
       初始化时只指定数组的长度,由系统为数组分配初始值
       格式: 数据类型[][] 变量名 = new 数据类型[数组长度][数组长度];
       例如:    int[][] arr=new int[5][5];
       
静态初始化:
       初始化时指定每个数组元素的初始值,由系统决定数组长度
       格式:数据类型[][] 变量名=new 数据类型[][]{{数据1...}{数据2...}...};
       例如:    int[][] arr=new int[][]{{1,2},{3,4},{5,6,7}};
       可以简化为:数据类型[][] 变量名={{数据1...}{数据2...}...};
       注意:简化写法中使用的是大括号
      例如:    int[][] arr={{1,2},{3,4},{5,6,7}};

3、二维数组元素访问

1.访问数组
通过数组名称来访问
格式:数组名称

2.访问一维数组中的元素
通过索引来访问
格式:数组名称[索引]

3.访问二维数组中的元素
通过索引来访问
格式:数组名称[索引][索引]

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北慕辰

你的鼓励是小北最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值