目录
一维数组
1.一维数组的声明
声明一个数组就是要确定数组名、数组的维数和数组元素的数据类型。一维数组的声明格式:类型标识符[ ] 数组名
。例如:
double[] myList;
float[] name;
double[] score;
2.一维数组的初始化
用new初始化二维数组
用new运算符初始化数组时,只指定数组元素的个数,为数组分配存储空间,并不给数组元素赋初值。用new运算符初始化数组的格式是:数组名 = new 类型标识符[元素个数]
或者是类型标识符 数组名[] = new 类型标识符[元素个数]
。例如:
int[] score;
score = new int[10];
int[] score = new int[10];
赋初值初始化数组
可以在声明数组的同时给数组元素赋初值,所赋初值的个数决定数组元素的数目。赋值的格式是:类型标识符 数组名[] = {赋值表}
,其中赋值表是用逗号隔开的初始值,例如:
int[] score = {1,2,3,4,5,6,7,8,9};
注意在Java中数组的下标也是从0开始的,即score[0] = 1
。
多维数组
1.二维数组的声明
二维数组的声明方式与一维数组相似,只是要给出两对方括号。格式是:类型标识符[][] 数组名
。举例来说:
int score[][];
int num[][];
2.二维数组的初始化
二维数组的意义是类似于矩阵的行列。它的初始化有两种方式,下面来分别介绍。
用new初始化二维数组
用new运算符初始化二维数组,只指定数组的行数和列数,为数组分配空间而并不为数组元素赋初值。赋值的格式是:数组名 = new 类型标识符[行数][列数];
举例来说:
int a[][];
a = new int[3][4];
int a = new int[3][4];
赋初值初始化数组
可以在声明数组的同时给数组元素赋初值,所赋初值的个数决定数组元素的数目。赋值的格式是:类型标识符 数组名[][] ={ {赋值表},{赋值表},{赋值表}......}
,其中赋值表是用逗号隔开的初始值,例如:
int grade[][] = {{1,2,3},{4,5,6},{7,8,9}};
/*该二维数组的初始值是分为4组,所以是由4行元素;由于每一组中是有3个元素
所以该数组是有3列*/
数组的基本操作
1.数组的复制
如果要将一个数组的所有元素复制到另一个数组,则可以通过循环语句对逐个元素进行赋值,也可以直接将一个数组赋给另一个数组。
public class Test{
public static void main(String args[]){
int[] a = {1,2,3,4,5};
int[] b = new int[5];
for(int i=0;i<5;i++){
b[i]=a[i];
}
}
}
2.数组的输出
数组的输出通常也是使用循环来使得逐个元素进行输出,例如:
public class Test{
public static void main(String args[]){
int[] a = {1,2,3,4,5};
for(int i=0;i<5;i++){
System.out.println(a[i]);
}
}
}
数组参数
在Java中是允许方法的参数是数组。但是在使用数组参数时,需要注意以下事项:
(1)在形参表,数组名后面的括号不能够省略,但不需要给出数组元素的个数。
(2)在实参中,数组名后面不需要括号。
(3)数组做参数时,传递的是地址而不是值。
//求平均值
public class Test{
static float arrayAverage(int[] d){
float average = 0;
for(int i=0;i<d.length;i++){
average = average+d[i];
}
average = average/d.length;
return average;
}
public static void main(String args[]){
int[] a = {1,2,3,4,5};
System.out.println(arrayAverage(a));
}
}
字符串
1.创建字符串
字符串变量是String类的对象。如果要使用字符串变量,可以使用String类来实现。声明字符串变量的格式String 变量名;
而初始化字符串变量的格式是:变量名 = new String(" ");
,例如:
String s;
s = new String("China");
字符串在声明完之后也可以直接赋值,例如:
String s;
s = "China";
2.字符串操作
访问字符串
在String类中有很多成员方法,下面来介绍一些常用的方法。
(1)int length()
length()方法是返回字符串的长度,返回值的数据类型是int。例如:
String s = "Hello";
System.out.println(s.length()); //输出为5
(2)char charAt(int index)
charAt(int index)方法的功能是返回字符串第index个字符,返回类型是char。例如:
String s = "Hello";
System.out.println(s.charAt(0)); //返回的是H
(3)int indexOf(char ch)
indexOf(int ch)方法是返回字符串中字符ch第一次出现的位置,返回类型是int。
String s = "Hello";
System.out.println(s.indexOf(e)); //返回的是1
字符串比较
在Java中字符串的比较是从首字符开始逐个向后比较对应字符,如果发现了一对不同的字符,比较过程结束,该对字符的大小关系便是两个字符串的大小关系。
下面介绍一些用于进行字符串比较的几个常用的成员方法:
(1)equals(Object obj)
方法equals(Object obj)的功能是将该字符串与obj表示的字符串进行比较,如果两种相等返回布尔类型true,否则返回false。
String s = "Hello";
s.equals("hello"); //因为H!=h,所以返回false
(2)compareTo(String str)
compareTo(String str)的方法是将该字符串与str表示的字符串进行大小比较,返回值为int。如果该字符串比str表示的字符串大,返回正值,否则返回负值,相等时返回0。
String s = "Hello";
s.compareTo("hello"); //返回的值为正
3.字符串数组
如果要表示一组字符串,可以通过字符串数组来实现,实现的方法和普通的数组类似。
String[] str = new String[4];
str[0] = "BJ";
str[1] = "SH";
str[2] = "CD";
str[3] = "WH";