第十一课 数组

第十一课  数组
一、        数组的定义
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方法实现快速排序。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值