数组 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);
    }
}
相关推荐
封奚泽优9 分钟前
使用Python实现单词记忆软件
开发语言·python·random·qpushbutton·qtwidgets·qtcore·qtgui
慕y27415 分钟前
Java学习第七十二部分——Zookeeper
java·学习·java-zookeeper
midsummer_woo20 分钟前
基于spring boot的医院挂号就诊系统(源码+论文)
java·spring boot·后端
_Aaron___1 小时前
面向对象的三大特性---多态
java
Kiri霧1 小时前
IntelliJ IDEA
java·ide·kotlin·intellij-idea
liulilittle1 小时前
C++/CLI与标准C++的语法差异(一)
开发语言·c++·.net·cli·clr·托管·原生
daixin88481 小时前
什么是缓存雪崩?缓存击穿?缓存穿透?分别如何解决?什么是缓存预热?
java·开发语言·redis·缓存
京茶吉鹿1 小时前
"if else" 堆成山?这招让你的代码优雅起飞!
java·后端
你我约定有三1 小时前
RabbitMQ--消息丢失问题及解决
java·开发语言·分布式·后端·rabbitmq·ruby
张北北.2 小时前
【深入底层】C++开发简历4+4技能描述6
java·开发语言·c++