java基础知识笔记_数组

一.数组概念

数组是存储同一种数据类型多个元素的集合
数组既可以存储基本数据类型,也可以存储引用数据类型

二.数组的定义格式

格式一:数据类型[] 数组名 int[] x;定义一个int类型的数组x变量(一般使用这种)
格式二:数据类型 数组名[] int x[];定义一个int类型的a数组变量

三.数组的初始化

动态初始化:初始化时指定数组长度,由系统为数组分配初始化值(默认是0)
格式:数据类型[] 数组名 = new 数据类型[数组长度]
例子:int[] arr = new int[3];
打印arr则是内存地址的值

四.静态初始化

初始化时指定每个数组元素的初始值,由系统决定数组长度
格式:

  1. 数据类型[] 数组名 = new 数据类型[]{数值1,数值2,数值3}
  2. 数据类型[] 数组名 = {数值1,数值2,数值3}

例:

  1. int[] arr = new int[]{1,2,3};
  2. int[] arr = {1,2,3};

注意事项:不要同时动态和静态进行
如下格式:int[] arr = new int []{1,2,3}//错误

数组操作的两个常见小问题:
ArrayIndexOutOfBoundsException:数组索引越界异常
原因:访问了不存在的索引

NullPointerException:空指针异常
原因:数组已经不在指向堆内存了。而你还用数组名去访问元素

一维数组内存图
在这里插入图片描述
在这里插入图片描述

五.二维数组

就是元素为一维数组的一个数组

格式1:
数据类型[][] 数组名 = new 数据类型[m][n];
m:表示这个二维数组有多少个一维数组
n:表示每一个一维数组的元素有多少个

注意:
以下格式也可以表示二维数组
a.数据类型 数组名[][] = new 数据类型[m][n];
b.数据类型[] 数组名[] = new 数据类型[m][n];

注意下面定义的区别
int x;
int y;
int x,y;
int[] x;
int[] y[];
int[] x,y[];

格式2:
数据类型[][] 数组名 = new 数据类型[m][];
m:表示这个二维数组有多少个一维数组列数没有给出,可以动态给。

格式3:
基本格式:数据类型[][] 数组名 = new 数据类型[][]{ {元素1,元素2…},{元素1,元素2…},{元素1,元素2…}}

数据类型[][] 数组名 = { {元素1,元素2…},{元素1,元素2…},{元素1,元素2…}}
举例:int[][] arr = { {1,2,3},{4,5,6},{7,8,9}};

二维数组例:

class ArrayDemo{
   
		int[][] arr = new int[3][2];
		
		System.out.println(arr);//地址值[[I@175078b
		
		System.out.println(arr[0]);//地址值 [I@42552c
		System.out.println(arr[1]);
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值