数组 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);
    }
}
相关推荐
爱上妖精的尾巴2 分钟前
6-4 WPS JS宏 不重复随机取值应用
开发语言·前端·javascript
Goldn.27 分钟前
Java核心技术栈全景解析:从Web开发到AI融合
java· spring boot· 微服务· ai· jvm· maven· hibernate
李慕婉学姐1 小时前
【开题答辩过程】以《基于Android的出租车运行监测系统设计与实现》为例,不知道这个选题怎么做的,不知道这个选题怎么开题答辩的可以进来看看
java·后端·vue
小鸡吃米…2 小时前
Python 列表
开发语言·python
m0_740043732 小时前
SpringBoot05-配置文件-热加载/日志框架slf4j/接口文档工具Swagger/Knife4j
java·spring boot·后端·log4j
编织幻境的妖2 小时前
SQL查询连续登录用户方法详解
java·数据库·sql
kaikaile19952 小时前
基于C#实现一维码和二维码打印程序
开发语言·c#
我不是程序猿儿2 小时前
【C#】画图控件的FormsPlot中的Refresh功能调用消耗时间不一致缘由
开发语言·c#
未若君雅裁2 小时前
JVM面试篇总结
java·jvm·面试
rit84324992 小时前
C# Socket 聊天室(含文件传输)
服务器·开发语言·c#