目录
一、数组的基本概念
1、程序
程序 = 算法 + 数据结构。 它定义了如何通过一系列有序的步骤来解决问题。
(2)算法
算法就是解决问题的步骤流程。它决定了程序怎样去执行任务。
(3)数据结构
数据结构描述了数据的存储方式,设计良好的数据结构会导致良好的算法。
2、数组
数组是存放同一种类型数据的集合。在内存中,数组是一块连续的存储区域。数组是最简单的数据结构。
二、数组的特点
1、连续性
数组是一块连续的存储区域,就好像一把梯子,每一格可以放一个数据,它们是连在一起的,就算要移动位置也是所有的格子一起移动。
2、长度固定
数组的长度是固定的,一旦初始化了之后长度就不能改变,我觉得这里特点也可以用梯子来理解,就像是梯子已经做好了它就一直是那么长,你不能给它掰断几阶。
3、随机访问
数组的每一个位置都有下标,要访问这个位置里面的东西可以直接根据下标访问。还是以梯子为例,把梯子横放到地上,每一空都装有东西,加入你想要第5空里面的东西,你就可以直接告诉别人(相当于计算机),他就能根据这个5去找对应的位置,然后把东西查出来给你。
三、数组的定义方式
元素类型[] 数组名 = new 元素类型[长度];
int[] array1 = new int[3];
double[] array2 = new double[3];
boolean[] array3 = new boolean[3];
char[] array4 = new char[3];
Student[] array5 = new Student[3];//Student是自己定义的类
1、静态初始化
在声明数组的同时,直接给出数组元素的初始值。适用于数组元素已知的情况。
int[] array = {32,5,7,87};
int[] array = new int[]{32,5,7,87};
2、动态初始化
在声明数组时,仅指定数组的长度,而不直接给数组元素赋值,后面通过赋值语句逐个给数组元素赋值。适用于数组元素在声明时未知的情况。注意:数组下标是从0开始。刚开始学的小伙伴可能会不习惯,等多写写代码就习惯啦。
int[] array = new int[4];
array[0] = 34;
array[1] = 22;
array[2] = 33;
array[3] = 12;
四、数组的访问和遍历
1、数组的访问
数组名[下标], 比如说我想要数组里面的第1个值,代码如下:
@Test
public void test2() {
int[] array = {3,2,5,6};
int result = array[0];
System.out.println("数组里面的第1个元素为:" + array[0]); //数组里面的第1个元素为:3
}
2、数组的遍历
常用for循环来遍历数组,例如:
@Test
public void test3() {
int[] array = {40, 17, 21, 1};
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
}
数组的基础介绍就到这里啦,明天写一下用数组来解决一些常见的问题。