动态初始化 typel arrayName= new typelarraySize type arrayName= new typelarraySizel s=new char]
动态初始化 ▪ type[ ] arrayName = new type[arraySize] ▪ type arrayName[ ] = new type[arraySize] s = new char[20];
复合类型的数组 复合类型的数组需要经过两步进行空间分 配 使用运算符new只是为数组本身分配空间,并 没有对数组的元素进行初始化 第一步先创建数组本身: type arrayNamel= new typelarraySizel; 第二步分别创建各个数组元素: arrayName[0= new type(paramList); arrayName larraySize-1=new type(paramList);
复合类型的数组 ▪ 复合类型的数组需要经过两步进行空间分 配 ▪ 使用运算符new只是为数组本身分配空间,并 没有对数组的元素进行初始化 ▪ 第一步先创建数组本身: • type arrayName[ ] = new type[arraySize]; 第二步分别创建各个数组元素: arrayName[0] = new type(paramList); … arrayName[arraySize-1] = new type(paramList);
复合类型的数组 points= new Point[1001 points 0= new pointe pointalul-nau Dainan ●。● Java中没有静态的数组定义, pon 内存都是通过new动态分配的。 str t intErray;∥是错误的 stri stringArray[0= new String(how); stringArrayll=new String(are")
复合类型的数组 points = new Point[100]; points[0] = new Point(); points[1] = new Point(); … points[99] = new Point(); string stringArrar[]; stringArray = new String[3]; stringArray[0] = new String(“how”); stringArray[1] = new String(“are”); Java中没有静态的数组定义, 内存都是通过new动态分配的。 int intArray[5]; //是错误的
数组说明与创建关系 Point类 class point i nt x, y; Point( int xl, int y1) y=y1; Point i this(0,0);
数组说明与创建关系 ▪ Point类 class Point { int x, y; Point ( int x1, int y1) { x = x1; y = y1; } Point() { this(0, 0); } }
数组说明与创建关系 points points points= new Point [100] 执行完毕,系统在内存中分配 个数组对象并把数组引用赋给变 量 points Length: 100 Point points 执行完毕,系统为变量 points分配一个引用空间 points[1l=new Point 0: (b)
数组说明与创建关系 points (a) points Length:100 … (b) points … Length:100 X: Y: (c) Point [] points; 执行完毕,系统为变量 points分配一个引用空间 points = new Point [100]; 执行完毕,系统在内存中分配一 个数组对象并把数组引用赋给变 量points points[1] = new Point ();