栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA 数组(一维数组)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA 数组(一维数组)

Java 语言中提供的数组是用来存储固定大小的同类型元素。即存储同种数据类型的多个值

1.声明数组变量和数组初始化

首先必须声明数组变量,才能在程序中使用数组。

语法:

dataType[] arrayRefVar;   
 
或
 
dataType arrayRefVar[]; 
Java中的数组必须先初始化,然后才能使用

初始化数组有两种:静态初始化和动态初始化

动态初始化: 初始化时指定数组长度,由系统为数组分配初始值 格式:                 数据类型[ ] 变量名= new  数据类型[数组长度]; 范例:                 int [ ] arr = new int[5]; 静态初始化:初始化时,就可以指定要存储的元素,系统还会计算出该数组的长度 格式:                 数据类型[ ] 变量名= {数据1,数据2,数据3.....}; 范例:                 int [ ] arr = {1,2,3,4,5,6};

动态初始化和静态初始化的区别:

  • 动态初始化:手动指定数组长度,由系统给出默认初始值。
  • 静态初始值:手动指定数组元素,系统会根据元素个数,计算数组的长度。
2.操作数组的元素 数组元素访问

        访问方式 格式:数据名[索引]

索引的作用:访问数组容器中的空间位置

索引是数组容器中空间的编号

特征:
  • 索引从0开始
  • 索引是连续的
  • 索引逐一增加,每次加一
public class Text1 {
    public static void main(String[] args) {
        int d[]={4,5,6,2,3,1,9,8,7,10,12,14,15};//下标从0开始
        System.out.println(d[0]);//输出下标为0的值 为4
        System.out.println(d[1]);//输出下标为1的值 为5
    }
    }
3.内存分配

Java 程序在运行时,需要在内存中分配空间。

为了提高运算效率,就对空间进行了不同区域的划分

每一片区域都有特定的处理数据方式和内存管理方式。

  • 栈内存:方法运行时,进入的内存,局部变量都存放于这块内存当中

  • 堆内存:new出来的内容都会进入堆内存,并且会存在地址值

  • 方法区:字节码文件(.class文件)加载时进入的内存

  • 本地方法栈:调用操作系统相关资源

  • 寄存器:交给CPU去使用

数组操作常见的问题
  • 索引越界:访问了数组中不存在的索引对应的元素,造成索引越界问题
  • 空指针异常:访问的数组已经不再指向堆内存的数据,造成空指针异常
  • null:空值,引用数据类型的默认值,表示不指向任何有效对象

索引越界:

        int d[]={4,5,6,2,3,1,9,8,7,10,12,14,15};//下标从0开始
        System.out.println(d[20]);//输出下标为20的值

因为数组中没有下标为20的值,导致索引越界报错

 空指针异常

        int d[]={4,5,6,2,3,1,9,8,7,10,12,14,15};//下标从0开始
        d=null;
        System.out.println(d[2]);//输出下标为2的值,

第二行代码d=null将d数组的值赋为空值,所以后面的索引就报错

 4.数组遍历

 

 扩展:                 For-Each 循环

 For-Each 能在不使用下标的情况下遍历数组。

语法:

for(type element: array)
{
    System.out.println(element);
}

用法实例:

public class Text1 {
    public static void main(String[] args) {
                int a[] = {12,36,45,97,52};
                // 打印所有数组元素
                for (int element: a) {
                    System.out.println(element);
                }
            }
        }

运行结果:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1005978.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号