第十一课 数组
一、 数组的定义
1、格式: 类型 数组名[];
char a[];
char [] b;
float c[];
float []d;
以上定义是合法的,[]可以放在前面,也可以放在后面,在JAVA的习惯中是放在前面的。
2、 特点:
①数组定义不分配内存空间,因此不必指定数组大小
②一个数组中的元素应该是同一类型的
③数组中的元素是有顺序的
④数组中的一个元素通过数组名和下标值来确定
二、数组的建立:分配内存空间,有两种方法
①通过关键字new来建立数组:
a=new char[5];
char []e=new char[5]
②直接指定初值的方法建立数组
int []f={1,2,3,4,5};
三、数组的初始化
①静态方法:直接在字义数组时就进行初始化,如:
String []name={"marry","klood","carry"};
int []age={43,35,46}
②动态方法:用 new关键字来分配内存,如:
String []name;
name=new String[3];
name[0]="marry";
name[1]="klood";
name[2]="carry";
注:在下标中取值为0~(N-1)之间,否则在运行时会出现下标越界
四、二维数组的定义
int [][]ma=new int[3][3];
int [][]mb={{1,2,3},{4,5,6},{7,8,9}};
int [][]mc=new int [3][];
mc[0]=new int[10];
mc[1]=new int[5];
mc[2]=new int[3];
五、应用举例:
1、
public class arrayTest{
public static void main(String args[]){
int []year={1992,1993,1994};
int i;
System.out.println(year.length);
for(i=0;i<year.length;i++){
System.out.println(year);
}
}
}
2、
public class mainMess{
public static void main(String args[]){
if (args[0].equals("-h"))
System.out.print("Hello ");
else if (args[0].equals("-g"))
System.out.print("good bye ");
for(int i=1;i<args.length;i++)
System.out.println(args);
}
}
六、数组的排序和复制
我们通过下面的例子来说明它的使用方法:
import java.util.*;
public class copyAndsort{
public static void main(String args[]){
int []a={1,2,3,4,5,6,7,8};
int []b={100,200,300,400,500,600,700};
System.arraycopy(a,2,b,3,3);
for(int i=0;i<b.length;i++)
System.out.println(b);
Arrays.sort(b);
for(int i=0;i<b.length;i++)
System.out.println(b);
}
}
arraycopy方法实现了复制,从a的第2下标处开始,到b的下标3开始的3个字符
Arrays类在包java.util中,使用其中的sort方法实现快速排序。
第十一课 数组
最新推荐文章于 2022-10-11 22:01:29 发布