前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java基础——数组

Java基础——数组

作者头像
羊羽shine
发布2019-05-28 13:22:18
3020
发布2019-05-28 13:22:18
举报
文章被收录于专栏:Golang开发Golang开发
特征

(1)数组元素的类型是唯一的,一个数组只能存储一种数据类型的数据。 (2)数组的长度是固定的,一旦数组初始化完成,数组所占有的内存空间将被固定。数组长度不可以改变。 (3)数组元素的类型既可以是基本类型 也是存储引用类型。

声明
代码语言:javascript
复制
数据类型[] 数组变量名(推荐写法)
数据类型 数组变量名 []

Java是面向对象的语言,数据类型[]可以看成是一个整体类型,即数组类型,第二种是C 语言数组的声明方式。

代码语言:javascript
复制
int[] intArr;
String[] stringArr;
初始化

数组初始化的过程就是为数组的元素分配内存空间,并且为每个元素赋初始值 **(1)动态初始化 ** 动态初始化使用new运算符分配指定长度的内存空间,只指定长度,由系统给出初始化值,注意必须指定数组的长度值

代码语言:javascript
复制
new 数据类型[数组长度]

eg

代码语言:javascript
复制
        int[] intArr = new int[2];
        intArr[0] = 1;
        intArr[1] = 2;
        String[] stringArr = new String[3];
        stringArr[0] = "Hello world";
        stringArr[1] = "Hello Java";
        stringArr[2] = "Hello Python";

(2)静态初始化

代码语言:javascript
复制
类型[] 数组名称 = new 类型[]{元素,元素,....}
类型[] 数组名 = {元素,元素,....}

给出初始化值,不需要指定数组的长度,根据初始值的个数决定长度.

代码语言:javascript
复制
 int[] arr = new int[]{1,2,3,4,5}; 
 int[] arr = {1,2,3,4,5};

数组的初始化具体示例用法

代码语言:javascript
复制
public class Main {

    public static void main(String[] args){
        int [] arr = new int[10];// 声明数组
        for(int i =0;i<arr.length;i++){
            arr[i]=i;
        }
        int []numbers = new int[]{100,90,80};
        for(int i =0;i<numbers.length;i++){
            System.out.println(numbers[i]);
        }
        for(int num :numbers){
            System.out.println(num);
        }
    }
}
ArrayIndexOutOfBoundsException

每个数组的索引都有一个范围,即0——length-1,在访问数组的元素,不能超过数组范围,否则引起ArrayIndexOutOfBoundsException

代码语言:javascript
复制
public static void main(String[] args) {
       int [] arr ={1,2,3,4};
       System.out.println(arr[4]);
    }
NullPointerException

空指针异常,使用变量引用一个数组的时候,必须执行一个有效的数组对象,如果该变量值为null,则意味没有指向任何数组,此时通过变量名称访问数组元素会出现空指针异常

代码语言:javascript
复制
public static void main(String[] args) {
       int [] arr ={1,2,3,4};
       System.out.println(arr[0]);
       arr = null;
       System.out.println(arr[0]);
    }
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.06.03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 特征
  • 声明
  • 初始化
    • ArrayIndexOutOfBoundsException
    • NullPointerException
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档