java数组

数组的概念
  • 数组是用来存储一组相同类型数据的数据结构
  • 数组有一维和多维
  • 数组可以为原始类型或类类型
  • 数组是一个对象,而不是为原始类型储备的存储器
声明数组

数组变量被声明了,但没有分配空间

int[] myint;
int myint[];
MyClass[] myClassArray;
MyClass myClassArray[];
创建数组
  • 数组是一个对象,因此使用new创建一个数组对象
  • 创建数组的目的是为数组开辟空间
char[] s;//声明数
Point[] p;  
s = new char20;//创建数组
p = new Point 30;
初始化数组
  • 数组的每个元素都要逐一初始化
char[] s;//声明数组
Point[] p;  
s = new char[10];//创建数组
p = new Point[20];
p0 = new Point(10,10);//初始化数组
p1 = new Point();//Point()默认为(0,0)
          ·
          ·
          ·
p19= new Point(90,100);
  • 数组的声明、创建和初始化用一条语句完成
String[] names={"张三","李四","王五"};

也可以这样编写:

String s1="张三";
String s2="李四";
String s3="王五";
String[] movies={s1,s2,s3};

只有初始化数组时才能用到“{ }”,像下面编写的代码就不行:

int[] arr=new int[5];
arr={1,2,3,4,5};//不能编译

只有象下面这样写才行

int[] arr={1,2,3,4,5};
多维数组

理论上讲,所有的java数组都是一维的,多维数组是数组的数组。

int twoDim [][] = new int [3][];
Int[][] twoDim = new int[3][];
twoDim[0] = new int[5];
twoDim[1] = new int[3]; 
twoDim[2] = new int[4];
twoDim[0][0]=1;
twoDim[0][1]=2;  
    ...

java语言允许非矩形的数组

twoDim0= new int[2];
twoDim1= new int[4];
twoDim2= new int[6];
twoDim3= new int[8];
数组界限

所有数组的下标都从0开始

int list[] = new int[10];
for (int i= 0; i< list.length; i++)
    System.out.println(list[i]); 
list.length为10
复制数组
  • 不能调整数组的大小
  • 可使用相同的引用变量来引用一个全新的数组
int elements[] = new int[6];
elements = new int[10]; 
  • 使用System.arraycopy()方法复制数组
    函数原型为:public static void arraycopy(Object src,int srcPos,Object dest,int destPos,int length)
    使用举例:
int myArray[]={ 1, 2, 3, 4, 5, 6 }; 
int hold[]={ 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 }; 
System.arraycopy(myArray, 0, hold, 0, myArray.length);
  • 当然也可以通过遍历逐个元素复制数组
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值