文章目录
前言
计算机程序离不开算法和数据结构。
数据结构就是把数据按照某种特定的结构来保存。
数组是编程语言中最常见的一种数据结构,可以用于存储多个数据,每个数组元素存放一个数据。
通常,可以通过数组元素的索引来访问数组元素,包括为数组元素赋值和取出数组元的值。
Java的数组要求所有的数组元素具有相同的数据类型。因此,在一个数组中,数组元素的类型是唯一的(即一个数组里只能存放一种数据类型的数据)。
数组也是一种数据类型,它本身是一种引用类型。
例如: int 是一个基本类型,但 int[ ] (定义数组的一种方式) 就是一种引用类型。
数组的定义
Java语言支持两种语法格式来定义数组
语法:
int[ ] arrayName(推荐); 具有更好的可读性
int arrayName[ ] (不推荐); 可读性差
以上的数组还不能使用,只有对数组进行初始化才能使用。
数组的初始化
数组的初始化: 就是对数组的数组元素分配内存空间,并为每个数组元素赋初始值。
静态初始化:
初始化时由程序员显式指定每个数组元素的初始值,由系统决定数组长度,语法格式如下:
type0 arrayName = new type[]{
element1,element2,element3,....}
解析:type 是数据元素的数据类型,此处的 type 必须与定义数组变量( arrayName )时所用的 type0 相同,也可以是定义数组时所指定的 type0 的子类。
静态初始化语法格式如下:
type[] arrayName = {
element1,element2,element3,....};
例如,如下代码:
Object类是所有类的父类,包括我们所写的类,我们在使用类的时候就会利用Object类中的方法~
package day01;
public class Type {
public static void main(String[] args) {
//定义一个 int 数组类型的变量
int [] Intarr;
//使用静态初始化,初始化数组时只指定数组元素的初始值,不指定数组长度
Intarr = new int[] {
5,6,7,8,9};
//定义一个Object数组类型的变量
//String 是 Object 的子类,字符串String是一种特殊的Object实例
//使用静态初始化,初始化数组时数组元素的类型是定义数组时数组元素类型的子类
Object [] objecarr;
objecarr = new String [] {
"javaWeb","张三"};
//使用静态初始化
Object [] objecarr2;
objecarr2 = new Object [] {
"java","张三"};
System.out.println(objecarr[0]);
//静态初始化简化格式
String[] arrayName = {
"java","张三","zbt"};
System.out.println(arrayName[2]);
//以","为分隔符,将字符串拆分为字符数组
String ss = "java,zbt,张三";
String[] s1 = ss.split(",");
for(int i=0;i<=ss.length();i++) {
System.out.println(s1[i]+" ");
}
}
}
动态初始化:
初始化只指定数组的长度,由系统为每个数组元素指定初始值. 语法格式如下:
type0[] arrayName = new type[length];
动态初始化的用法,代码如下:
package day01;
public class Type {
public static void main(String[] args) {
//定义一个存放分数的数组
//动态初始化数组,指定数组长度
int[] score = new int[3];
score[0] = 10;
score[1] = 20;
score[2] = 30