第四章习题解答
4.1举例说明如何声明、创建和初始化一维数组。
声明一维数组有两种格式:
数组元素类型 数组名[]; 或者 数组元素类型[] 数组名 例如 String subStr1[]; int[] aa; 创建一维数组有三种方法:
先声明后创建 先用前面的两种方式声明数组,然后使用:数组名字=new 数组元素类型[元素个数]; 创建 例如 int aa[];
aa[]=new int[6];
在声明时创建 数组元素类型[] 数组名(或者是:数组元素类型 数组名[])=new 数组元素类型[元素个数];
例如 int aa[]=new int[6];
直接赋值创建 例如 int aa[]={2,3,4,5,6,7};
4.2举例说明如何声明、创建和初始化多维数组。
声明二维数组:类型 数组名[ ][ ] 类型[ ][ ]数组名 类型[ ]数组名[ ] 例如:
声明 Sting subStr[ ][ ]; String [ ] [ ] subStr; String[ ] subStr[ ]; 创建 (1)String subStr[ ][ ]=new String[3][5];(直接分配,平衡数组)
(2)String subStr[ ][ ]=new String[3][ ];(从最高维开始对每一维分配不等长空间,非平衡数组)
subStr[0]=new String[4];//第1个子数组有4个元素 subStr[1]=new String[5];//第2个子数组有5个元素 subStr[2]=new String[2];//第3个子数组有2个元素
(3)int[ ][ ] x={{5,6,7},{8,9,10,11},{18,19,10,10},{2,98}};//直接赋值创建
初始化:数组创建后,如果没有初始化,则根据类型java会自动赋予默认值。一般用循环语句对其动态初始化,例如,以下循环给三维整型数组aa初始化为三角数组。 int a[]=new int[5];
int aaa[][][]=new int [4][3][3]; for (int i=0;i for (int i=0;i for (int j=0;j for (int k=0;k aaa[i][j][k]=(i+j+1)*(k+1);} } } 4.3一个数组能够存储不同类型的元素吗? 答:不能 4.4 编写一个java程序,形成以下形式的二维数组,并输出。 1 4 5 16 17 2 9 3 8 6 7 15 14 18 19 10 11 12 13 20 25 24 23 22 21 方法1:原样照抄,不动脑筋,当你实在做不出来时,可以这样办。 public class Array{ public static void main(String[] args){ int[][] a = {{1,2,9,10,25}, {4,3,8,11,24}, {5,6,7,12,23}, {16,15,14,13,22}, {17,18,19,20,21}}; for(int i=0; i< a.length; i++){