首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

Java数组

Java数组

数组是一种引用类型,有两个重要特征:定长,数组中各元素的数据类型一致。

程序中用到的很多算法都需要借助数组实现,如果程序中要是用大量数据类型相同的变量,若单个声明非常麻烦,有了数组就简单许多

一维数组是使用最频繁的,一维数组的使用包括声明,初始化,访问三个过程

数据类型[] 数组名; int[] arr;

初始化后才会分配空间,也就是必须得先初始化:

静态初始化和动态初始化
静态初始化:就是直接将元素一一列举出来
例如 int[] arr = {1,2,3,4};
动态初始化:就是用new分配空间,指定类型和长度,并且为每个元素一一赋值。如果没有赋值默认为0
例如 int[] arr = new int[10] ;
index是数组下标 从0开始到arr.length-1结束

Java 会对数组元素进行越界检查以保证安全性,如果你访问数组边界以外的元素会抛出异常

class HelloWord{
    public static void main(String[] args){
        //声明数组,并静态初始化
        int[] arr = {1,2,3};
        String[] str = {"i","love","you"};

        //声明数组,并动态初始化
        int[] d = new int[10];
        d[8] = 1;//初始化其中的元素,其他没有初始化的,默认为0
        
        /**
         * Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 10
         *     at cn.dg.learn_37.dg_interface.HelloWord.main(User.java:77)
         *     越界报错
         * */
        System.out.println(d[10]);  //访问越界了
    }
}
返回列表