一、数组的类型可以为任意类型吗?
答:
可以是任意类型
二、数组中的元素的类型必须是相同的吗? 数组中的元素是有序的吗?
答:
数组中元素的类型必须是相同的
数组中元素是有序的, 索引的顺序(从零开始)
三、数组的长度可变不? 数组的长度使用哪个属性?
答:
数组一旦声明其长度不能更改
数组的长度属性是 length
四、数组元素下标(或索引)的范围是?
答:
范围是 0-数组名.length-1
五、数组也是引用类型吗? 数组也是对象,这句话对吗?
答:
数组是引用数据类型
数组也是对象这句话正确
六、数组中的元素就像对象中的成员变量一样,初始化方式也一样。这句话对吗?
答:
正确
七、【编程题】数组的三种初始化方式是什么?
答:
1、静态初始化
int [] a={1,2,3};
2、动态初始化
int [] a=new int[3];
a[0]=1;
a[1]=2;
a[2]=3;
3、默认初始化
int [] a=new int[2];
八、数组的静态初始化代码,下面代码有没有不合理的地方:
Person[] per={
new Person(“小张”,12),
new Person(“小王”,13),
};
答:
有的; new Person(“小王”,13),后面的逗号应该去掉;
九、下面的数组定义哪些是正确的?
//A:
int a[][] = new int[4,4];
//B:
int a[4][4] = new int[][];
//C:
int a[][] = new int[4][4];
//D:
int []a[] = new int[4][4];
//E:
int[][]a = new int[4][4];
答:
C D E是正确的
十、请在下面语句中找出一个正确的?
//A
int arr1[1][2];
//B
int[][] a1 = new int[1][];
//C
int[][] arr2=new int [][2];
//D
int arr3[][3]= new int [1][2];
答:
B 是正确的
十一、【编程题】定义一个长度为10的一维字符串数组,在每一个元素放一个单词;然后运行时从命令行输入一个单词,程序判断数组是否包含有这个单词,包含这个单词就打印出"Yes",不包含就打印出"No"
答:
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
String next = scan.next();
String[] arr={“hello”,“world”,“java”,“html”,“工程师”};
boolean boo=false;
for(int i=0;i<arr.length;i++){
if(next.equals(arr[i])){
boo=true;
break;
}
}
System.out.println(next+“是否包含”+(boo?“YES”:“NO”));
}
十二、【编程题】自定义一个数组使用冒泡排序完成数组元素的排序?
答:
//冒泡排序法
int qw[]={1,2,32,43,122,};
for(int q=0;q<qw.length;q++){
for(int w=0;w<qw.length;w++){
if (qw[q]<qw[w])
{int ms=qw[q];
qw[q]=qw[w];
qw[w]=ms; }
}
}
//再次遍历出来
for(int q=0;q<qw.length;q++){
System.out.println(qw[q]+" ");}
十三、可变参数的作用及其用法
答:
作用:
适用于参数个数不确定、类型确定的情况;
用法:
位于变量类型和变量名之间,前后有无空格都可以,调用可变参数的方法时,编译器为该可变参数隐含创建一个数组,在方法体中以数组的形式访问可变参数
十四、【编程题】定义一个二维数组并求出该数组的所有元素之和:
答:
public static void main(String[] args) {
int[][] arry = { { 1}, { 2,2 }, { 3, 4, 5} };
int sum = 0;
for (int i = 0; i<arry.length; i++) {
for (int j = 0; j<arry[i].length; j++) {
sum += arry[i][j];
}
}
System.out.println(“和为:” + sum);
}