数组 array

1、数组定义

是一种用于存储多个相同类型数据的存储模型。

2、数组格式

(1)数据类型[ ] 变量名(比较常见这种格式

例如: int [ ] arr0,定义了一个int类型的数组,数组名是arr0;

(2)数据类型 变量名[ ]

例如: int arr1 [ ],定义了一个int类型的变量,变量名是arr1[ ],这个和普通定义一个变量很像,比如 int a,即是定义一个int类型的变量,变量名是a。

3、数组初始化

java中的数组只有初始化后才能使用,而初始化就是为数组中的元素分配内存空间,并为每个数组元素赋值。

初始化方式有动态初始化和静态初始化两种方式。

(1)动态初始化

动态初始化只指定数组长度,并由系统分配初始值:
整数:默认值0
浮点数:默认值0.0
布尔值:默认值false
字符:默认值是空字符
引用数据类型:默认值是null

格式: 数据类型 [ ] 变量名 = new 数据类型[数组长度];

举例:int [ ] arr0 = new int[3];

等号右边:new是为数组申请内存空间;3是数组长度,表示这个数组有3个元素。

数组元素的获取是通过索引获得,索引是数组中数据的编号方式,索引有0开始,连续的,逐一增加的特点

java 复制代码
int[] arr0 = new int[3];
        System.out.println(arr0);//输出是数组在内存上的地址值
        //arr0[0]表示的是arr0数组中第一个数据,就相当于一个变量
        System.out.println(arr0[0]);
        System.out.println(arr0[1]);
        System.out.println(arr0[2]);
        //赋值
        arr0[0] = 11;
        arr0[1] = 22;
        arr0[2] = 33;
        System.out.println(arr0);
        System.out.println(arr0[0]);
        System.out.println(arr0[1]);
        System.out.println(arr0[2]);

(2)静态初始化:初始化时指定每个数组元素的初始值,由系统统计数组长度。

格式:数据类型 [ ] 变量名 = new 数据类型 [ ]{数据1,数据2,数据3,...};

举例:int [ ] arr1 = new int [ ] {1,2,3};

简化格式:数据类型 [ ] 变量名 = {数据1,数据2,数据3,...};

举例: int [ ] arr1 = {1,2,3};

数组长度可以通过 数组名.length 获得。

java 复制代码
public class JingTaiChushihua {
    public static void main(String[] args) {
        int[] arr1 = {1,2,3};
        int[] arr2 = {4,5};
        System.out.println("arr1:"+arr1);
        System.out.println("arr1数组长度:"+arr1.length);
        System.out.println(arr1[0]);
        System.out.println(arr1[1]);
        System.out.println(arr1[2]);

        System.out.println("arr2:"+arr2);
        System.out.println("arr2数组长度:"+arr2.length);
        System.out.println(arr2[0]);
        System.out.println(arr2[1]);

        //如果定义一个数组指向已定义已知的数组
        int[] arr3 = arr1;
        System.out.println("arr3:"+arr3);//输出和arr1的结果一致
        System.out.println("arr3数组长度:"+arr3.length);
        System.out.println(arr3[0]);
        System.out.println(arr3[1]);
        System.out.println(arr3[2]);
    }
}

4、数组的遍历示例

java 复制代码
public class BianLi {
    public static void main(String[] args) {
        int[] arr ={11,22,33,44,55};
        //使用for循环进行遍历
        for(int x=0;x<arr.length;x++){
            System.out.println(arr[x]);
        }
    }
}

5、输出数组中元素最大值示例

java 复制代码
public class ZuiZhi {
    public static void main(String[] args) {
//        定义一个数组(静态初始化数组)
        int[] arr = {6,35,58,72,90};
        int max = arr[0];
        for(int i = 1;i < arr.length;i++){
           if(arr[i]>max){
               max = arr[i];
           }
        }
        System.out.println("max:"+max);
    }
}
相关推荐
Edingbrugh.南空11 分钟前
Flink ClickHouse 连接器维表源码深度解析
java·clickhouse·flink
掘金-我是哪吒31 分钟前
分布式微服务系统架构第157集:JavaPlus技术文档平台日更-Java多线程编程技巧
java·分布式·微服务·云原生·架构
飞翔的佩奇40 分钟前
Java项目:基于SSM框架实现的忘忧小区物业管理系统【ssm+B/S架构+源码+数据库+毕业论文+开题报告】
java·数据库·mysql·vue·毕业设计·ssm框架·小区物业管理系统
阿蒙Amon40 分钟前
C#扩展方法全解析:给现有类型插上翅膀的魔法
开发语言·c#
RainbowSea1 小时前
跨域问题(Allow CORS)解决(3 种方法)
java·spring boot·后端
掘金-我是哪吒1 小时前
分布式微服务系统架构第155集:JavaPlus技术文档平台日更-Java线程池实现原理
java·分布式·微服务·云原生·架构
RainbowSea1 小时前
问题 1:MyBatis-plus-3.5.9 的分页功能修复
java·spring boot·mybatis
尘浮7281 小时前
60天python训练计划----day59
开发语言·python
前端 贾公子1 小时前
monorepo + Turborepo --- 开发应用程序
java·前端·javascript
Chef_Chen2 小时前
从0开始学习R语言--Day39--Spearman 秩相关
开发语言·学习·r语言