数组 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 int3;

等号右边: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);
    }
}
相关推荐
NG4776 分钟前
【软件设计与体系结构】-策略设计模式
java·设计模式·软件工程
程序员天天困39 分钟前
优雅记录操作日志:从注解到 SpEL 的全链路实践与开源方案对比
java·后端
战血石LoveYY1 小时前
Integer类型超限,导致数据异常
java·算法
李永奉1 小时前
杰理可视化SDK开发-【BUG】配置“TWS两边同时按消息使能”功能后,按键单击功能无效失灵
开发语言·单片机·嵌入式硬件·物联网·bug
m0_617493941 小时前
Python OpenCV 透视变换(Perspective Transform)详解与实战
开发语言·python·opencv
程序猿编码1 小时前
用C++从零开始造一个微型GPT,不借助任何第三方库
开发语言·c++·gpt·模型推理
普通网友2 小时前
pytest一些常见的插件
开发语言·python·pytest
苦瓜花2 小时前
【Kotlin】初入门
android·开发语言·kotlin
cndes2 小时前
给Miniconda换源,让包下载更迅速
开发语言·python
乐观的Terry2 小时前
1、为什么要自己造发布系统
java·spring boot·后端·spring cloud·架构