java初学day_03
java初学day_03
数组相关
一个数组只能存储一种数据类型的数据。定义数组与两种语法格式,但尽量使用第一种:
type[] arrayName;
type arrayName[];
1
2
定义数组时不能指定数组的长度。而且由于定义数组只是定义了一个引用变量,并未指向任何有效的内存空间,因此还没有内存空间来存储数组元素,因此这个数组也不能使用,只有对数组进行初始化后才可以使用。
静态初始化:初始化时由程序员显式指定每个数组元素的初始值,由系统分配决定数组长度。
arrayName = new type[] {element1,element2,element2,ekement4 ...}
1
实际中更习惯将数组定义与初始化同时完成:int[] a = {5,6,7,8};
动态初始化:初始化时程序员只是指定数组长度,由系统为数组元素分配初始值。
arrayName = new type[length];
1
数组的定义与初始化同时完成:
int[] prices = new int[5];
Object[] books = new String[4];
1
2
定义数组变量后立即进行指定初始值的场景,推荐使用var来定义数组变量:
var names = new String[] {"yeeku","nono"};
var weighArr = new double[4];
1
2
访问数组元素:包括对数组元素进行赋值以及取出数组元素的值。都是通过在数组引用变量后,加一个方括号[索引值]:java语言的索引是从0开始的。例如:
Object[] = objArr; objArr = new String[] {"java","李刚"};或
Object[] objArr = new String[] {"java","李刚"};或
var objArr = new String[] {"java","李刚"};
System.out.println(objArr[1]);
1
2
3
4
结果会输出李刚。
foreach循环:遍历数组元素与集合元素。
f
or (type元素类型 variableName元素变量 : 遍历对象array / collection集合)
{
//variableName 自动迭代访问每个元素
}
1
2
3
4
例子:
package xuexi;
public class day001 {
public static void main(String[] args) {
int[] arr = { 2121, 5454, 545, 4, 54 };
for (int i : arr) {
System.out.println(i);
}
}
}
1
2
3
4
5
6
7
8
9
10
11
结果:
2121
5454
545
4
54
初始化并定义了一个数组后,在内存中分配存储了两个空间:一个是用于存放数组的引用变量,另一个是用于存放数组本身。
二维数组其实是一位数组的嵌套(每一行看做一个内层的一维数组)
格式1: 动态初始化
数据类型 数组名 [ ][ ] = new 数据类型[m][n]
数据类型 [ ][ ] 数组名 = new 数据类型[m][n]
数据类型 [ ] 数组名 [ ] = new 数据类型[m][n]
举例:int [ ][ ] arr=new int [5][3]; 也可以理解为“5行3例”
格式2: 静态初始化
数据类型 [ ][ ] 数组名 = {{元素1,元素2…},{元素1,元素2…},{元素1,元素2…}…};
举例:int [ ][ ] arr={{22,15,32,20,18},{12,21,25,19,33},{14,58,34,24,66},};
静态初始化可用于不规则二维数组的初始化
Arrays类位于 java.util 包中,主要包含了操纵数组的各种方法,使用时导包:
import java.util.Arrays
————————————————
版权声明:本文为CSDN博主「星回昭以烂」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_51013067/article/details/114746404