感谢你的路过,希望学生的笔记能给你一点微不足道的参考(2/100)
Java基础思维导图,完整Java体系的链接
目录标题
一,什么是数组?
1.1数组的概念
数组是相同数据类型的多个数据的容器。
这些元素按线性顺序排列。所谓线性顺序是指除第一个元素外,每一个元素都有唯一的前驱元素;除最后一个 元素外,每一个元素都有唯一的后继元素。(“简单理解就是:一个跟一个顺序排列”)。
1.2数组的格式
定义
方式一
格式:
数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度];
数组定义格式详解:
数组存储的数据类型: 创建的数组容器可以存储什么数据类型。
[] : 表示数组。 数组名字:为定义的数组起个变量名,满足标识符规范,可以使用名字操作数组。
new:关键字,创建数组使用的关键字。
数组存储的数据类型: 创建的数组容器可以存储什么数据类型。
[长度]:数组的长度,表示数组容器中可以存储多少个元素。
注意:
数组有定长特性,长度一旦指定,不可更改。 和水杯道理相同,买了一个2升的水杯,总容量就是2升,不能多也不能少
举例:
定义可以存储3个整数的数组容器,代码如下:int[] arr = new int[3];
方式二
格式:
数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3…};
举例:
数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3…};
int[] arr = new int[]{1,2,3,4,5};
方式三
格式:
数据类型[] 数组名 = {元素1,元素2,元素3…};
举例:
定义存储1,2,3,4,5整数的数组容器
int[] arr = {1,2,3,4,5};
1.3数组的访问
索引:
每一个存储到数组的元素,都会自动的拥有一个编号,
从0开始,这个自动编号称为数组索引 (index),可以通过数组的索引访问到数组中的元素。
格式:数组名[索引]
数组的长度属性:
个数组都具有长度,而且是固定的,Java中赋予了数组的一个属性,可以获取到数组的长度,
语句为: 数组名.length ,属性length的
执行结果是数组的长度,int类型结果。由次可以推断出,数 组的最大索引值为 数组名.length-1 。
索引访问数组中的元素:
数组名[索引]=数值,为数组中的元素赋值
变量=数组名[索引],获取出数组中的元素
代码:
package JieShao;
public class Demo01_JiChu {
/**
* 数组的基础知识
* @param args
*/
public static void main(String[] args) {
demo01();
}
/**
* 数组的常见创建格式
*/
public static void demo01() {
// 常用格式1.创建数组的同时,指定数组中的内容。
// 数据类型[] 数组名称 = {元素1,元素2,元素3...};
int[] args = {
10,11,12,13};
// 常用格式2.创建数组的同时,指定数组的长度,不指定数组中的内容。
// 数组存储的数据类型[] 数组名字 = new 数组存储的数据类型[长度];
int[] ages2 = new int[10];
}
/**
* 通过下标数组数据的方式
*/
public static void demo02() {
int[] args = new int[10];
// 1.给数组某个下标赋值:数组名称[下标] = 值;
args[0] = 100;
// 2.从数组某个下标取值:数组名称[下标]
System.out.println(args[0]);
}
/**
* 数组遍历
*/
public static void demo03() {
int[] args = {
10,11,12,13};
// 如何获取数组的长度:数组名称.length
for(int index = 0;index < args.length; index++)
{
System.out.println(args[index]);
}
}
/**
* 不常见的数组创建格式
*/
public static void demo04() {
// 1.创建数组,不初始化
// 格式: 数据类型[] 数组名;
int[] nums; //nums = new int[];-赋值方式
// 2,创建数组,并指定数组内容
// 格式: 数据类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3...};
int[] arr = new int[]{
1,2,3,4,5};
}
/**
* 多维数组(了解)
* 创建格式:
* 数据类型[] 数组名 = new 数据类型[长度];
* int[][] 二维数组名称 = new int[长度][];
*/
public static void demo05() {
int[][] nums = new int[10][];
nums[0] = new int[] {
1,2,3};
System.out.println(nums[0][2]);
}
}
1.4数组的常见问题?
数组越界异常:索引超过了数组范围
数组空指针异常:
arr = null 这行代码,意味着变量arr将不会
在保存数组的内存地址,也就不允许再操作数组了,因此运行的时候 会抛出 NullPointerException 空指针异常。
代码:
package JieShao;
public class Demo02_ChangJianWenTi {
/**
* 数组的常见问题
* @param args
*/
public static void main(String[] args) {
demo02();
}
/**
* 数组下标越界问题
*/
public static void demo01() {
int[] array = {
15, 25, 35 };
System.out.println