数组 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);
    }
}
相关推荐
h7ml4 小时前
企业微信回调模式解析:从XML到POJO的自定义JAXB编解码器设计
xml·java·企业微信
草莓熊Lotso4 小时前
Qt 信号与槽深度解析:从基础用法到高级实战(含 Lambda 表达式)
java·运维·开发语言·c++·人工智能·qt·数据挖掘
装不满的克莱因瓶5 小时前
【踩坑】IDEA提交Git .gitignore忽略文件不起作用
java·git·.gitignore·踩坑
superman超哥5 小时前
Rust 异步错误处理最佳实践
开发语言·rust·编程语言·rust异步错误处理·rust最佳实践
专注于大数据技术栈5 小时前
java学习--Collection的迭代器
java·python·学习
脏脏a5 小时前
C++ STL list 模拟实现:从底层链表到容器封装
开发语言·c++·stl·双链表
毕设源码-郭学长12 小时前
【开题答辩全过程】以 基于SpringBoot技术的美妆销售系统为例,包含答辩的问题和答案
java·spring boot·后端
故事不长丨12 小时前
C#正则表达式完全攻略:从基础到实战的全场景应用指南
开发语言·正则表达式·c#·regex
梨落秋霜12 小时前
Python入门篇【文件处理】
android·java·python
Java 码农12 小时前
RabbitMQ集群部署方案及配置指南03
java·python·rabbitmq