1、数组的定义
语法有两种:
type arrayName[]
type[] arrayName
type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明该变量是一个数组类型变量。
例如:
int demoArray[]
int[] demoArray
这两种形式没有区别,使用效果完全一样,读者可根据自己的编程习惯选择。
注意:Java在定义数组时并不为数组元素分配内存,因此[ ]中无需指定数组元素的个数,即数组长度。而且对于如上定义的一个数组是不能访问它的任何元素的,开发者必须要为它分配内存空间,这时要用到运算符new,其格式如下:
arrayName=new type[arraySize]
其中,arraySize 为数组的长度,type 为数组的类型。如:
demoArray=new int[3]//为一个整型数组分配3个int 型整数所占据的内存空间。
2、数组的初始化
可以在声明数组的同时进行初始化(静态初始化),也可以在声明以后进行初始化(动态初始化)。例如:
// 静态初始化
// 静态初始化的同时就为数组元素分配空间并赋值
int intArray[] = {1,2,3,4}
String stringArray[] = {"zhidao", "baidu", "百度知道"}
// 动态初始化
float floatArray[] = new float[3]
floatArray[0] = 1.0f
floatArray[1] = 132.63f
floatArray[2] = 100F
3、数组的使用:
每个数组都有一个length属性来指明它的长度,例如 intArray.length 指明数组 intArray 的长度。
【示例】写一段代码,要求输入任意5个整数,输出它们的和。
import java.util.*
public class Demo {
public static void main(String[] args){
int intArray[] = new int[5]
long total = 0
int len = intArray.length
// 给数组元素赋值
System.out.print("请输入" + len + "个整数,以空格为分隔:")
Scanner sc = new Scanner(System.in)
for(int i=0i<leni++){
intArray[i] = sc.nextInt()
}
// 计算数组元素的和
for(int i=0i<leni++){
total += intArray[i]
}
System.out.println("所有数组元素的和为:" + total)
}
}
运行结果:
请输入5个整数,以空格为分隔:10 20 15 25 50
所有数组元素的和为:120
public class a{public static void main(String[] args){
//方法一
int a[]//声明一个名字为a的整形数组
a=new int[3]//为名字为a的整形数组创建3个整数的存储空间
a[0]=2//为名字为a的整形数组中0角标的整数赋值为2
a[1]=5//为名字为a的整形数组中1角标的整数赋值为5
a[2]=7//为名字为a的整形数组中2角标的整数赋值为7
//方法二
int b[]=new int[3]//声明一个名字为b的整形数组并同时为这个整形数组创建3个整数的存储空间
b[0]=2//为名字为b的整形数组中0角标的整数赋值为2
b[1]=5//为名字为b的整形数组中1角标的整数赋值为5
b[2]=7//为名字为b的整形数组中2角标的整数赋值为7
//方法三
int c[]={2,5,7}//声明一个名字为c的整形数组并同时为这个整形数组创建3个整数的存储空间并把0角标的整数值赋值为2,把1角标的整数值赋值为5,把2角标的整数值赋值为7
//方法四
int d[]=new int[]{2,5,7}//声明一个名字为d的整形数组并同时为这个整形数组创建3个整数的存储空间并把0角标的整数值赋值为2,把1角标的整数值赋值为5,把2角标的整数值赋值为7
//注意:以上方法的结果一致,只是数组名字不同
}
}