Java数组练习题带复习资料

合集下载

Java-数组练习题目(汇编)

Java-数组练习题目(汇编)

一填空题1)数组的元素通过来访问,数组Array的长度为。

2)数组复制时,"="将一个数组的传递给另一个数组。

3)没有显式引用变量的数组称为数组。

4)JVM将数组存储在(堆或栈)中。

5)数组的二分查找法运用的前提条件是数组已经。

6)矩阵或表格一般用维数组表示。

7)如果把二维数组看成一维数组,那么数组的元素是数组。

8)Java中数组的下标的数据类型是。

9)不用下标变量就可以访问数组的方法是。

10)数组最小的下标是。

11)arraycopy()的最后一个参数指明。

12)向方法传递数组参数时,传递的是数组的。

13)线性查找法的平均查找长度为。

14)数组初始化包括。

15)数组下标访问超出索引范围时抛出异常16)浮点型数组的默认值是。

17)对象型数组的默认值是。

18)对象类型的数组虽然被默认初始化,但是并没有构造函数。

19)二维数组的行的长度不同。

20)数组创建后其大小改变。

二选择题1.下面错误的初始化语句是___A. char str[]="hello";B. char str[100]="hello";C. char str[]={'h','e','l','l','o'};D. char str[]={'hello'};2.定义了一维int型数组a[10]后,下面错误的引用是___A. a[0]=1;B. a[10]=2;C. a[0]=5*2;D. a[1]=a[2]*a[0];3.下面的二维数组初始化语句中,正确的是____A. float b[2][2]={0.1,0.2,0.3,0.4};B. int a[][]={{1,2},{3,4}};C. int a[2][]= {{1,2},{3,4}};D. float a[2][2]={0};4.引用数组元素时,数组下标可以是____A. 整型常量B. 整型变量C. 整型表达式D. 以上均可5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为____A. 24B. 25C. 18D. 176.下列初始化字符数组的语句中,正确的是____A. char str[5]="hello";B. char str[]={'h','e','l','l','o','\0'};C. char str[5]={"hi"};D. char str[100]="";7.数组在Java中储存在中A. 栈B. 队列C. 堆D. 链表8.下面程序的运行结果是____main() {int x=30;int[] numbers=new int[x];x=60;System.out.println(numbers.length);}A. 60B. 20C. 30D. 509.下面不是创建数组的正确语句A.float f[][]=new float[6][6];B.float f[]=new float[6];C.float f[][]=new float[][6];D.float [][]f=new float[6][];10.下面不是数组复制方法的是()A. 用循环语句逐个复制数组B. 用方法arraycopyC. 用"="进行复制D. 用clone方法11.数组a的第三个元素表示为A. a(3)B. a[3]C.a(2)D. a[2]12.当访问无效的数组下标时,会发生A. 中止程序B. 抛出异常C. 系统崩溃D. 直接跳过13.使用arraycopy()方法将数组a复制到b正确的是A. arraycopy(a,0,b,0,a.length)B. arraycopy(a,0,b,0,b.length)C.. arraycopy(b,0,a,0,a.length)D. arraycopy(a,1,b,1,a.length)14.关于数组默认值,错误的是A. char--'"u0000'B. Boolean--trueC. float--0.0fD. int-- 015.关于数组作为方法的参数时,向方法传递的是A. 数组的引用B. 数组的栈地址C. 数组自身D. 数组的元素16.关于数组复制,下列说法错误的是A. "="可以实现数组复制B. 运用循环语句进行数组复制必须两个数组长度相同C. arraycopy()方法没有给目标数组分配内存空间D. 数组复制是数组引用的传递17.下列语句会造成数组new int[10]越界是A. a[0] += 9;B. a[9]=10;C. —a[9]D. for(int i=0;i<=10;i++) a[i]++;18.main方法是java Application 程序执行的入口点。

数组选择试题及答案解析

数组选择试题及答案解析

数组选择试题及答案解析一、选择题1. 下列关于数组的描述中,错误的是:A. 数组是一种基本的数据结构,可以存储相同类型的多个元素B. 数组在内存中是连续存储的C. 数组的大小在定义后可以改变D. 数组可以通过索引来访问元素2. 假设有一个整型数组 int[] arr = {1, 2, 3, 4, 5}; 以下哪个表达式是正确的:A. arr[0] = 10B. arr[5] = 6C. arr[-1] = 0D. arr[5]3. 在Java中,以下哪个方法可以用来获取数组的长度:A. length()B. size()C. count()D. total()4. 假设有一个数组 int[] numbers = new int[5]; 以下哪个操作是合法的:A. numbers[5] = 10B. numbers[-1] = 0C. numbers[4] = 100D. numbers[0] = 55. 在C语言中,以下哪个数组声明是正确的:A. int arr[] = {1, 2, 3};B. int arr[3] = {1, 2, 3};C. int arr[3] = 1, 2, 3;D. int arr = {1, 2, 3};二、答案解析1. 答案:C解析:数组的大小在定义后是不可变的,这是数组的一个基本特性。

2. 答案:A解析:数组索引从0开始,arr[0]是第一个元素,可以赋值为10。

3. 答案:A解析:在Java中,数组的长度通过length属性获取。

4. 答案:C解析:数组索引从0到数组长度减一,所以索引4是合法的,可以赋值为100。

5. 答案:A解析:在C语言中,数组的声明可以不指定大小,编译器会根据初始化列表的长度自动计算数组的大小。

选项A是正确的声明方式。

Java数组练习题(带答案)

Java数组练习题(带答案)

一填空题1)数组得元素通过下标来访问,数组Array得长度为 Array、length 。

2)数组复制时,"="将一个数组得引用传递给另一个数组。

3)JVM将数组存储在栈 (堆或栈)中。

4)数组得二分查找法运用得前提条件就是数组已经排序。

5)Java中数组得下标得数据类型就是整型。

6)数组最小得下标就是 0 。

7)arraycopy()得最后一个参数指明复制元素得个数。

8)向方法传递数组参数时,传递得就是数组得引用。

9)数组初始化包括数组得申明,创建与初始化。

10)数组下标访问超出索引范围时抛出数组越界异常11)浮点型数组得默认值就是 0、0f 。

12)数组创建后其大小不能改变。

二选择题1.下面错误得初始化语句就是_ABD__A、 char str[]="hello";B、 char str[100]="hello";C、 char str[]={'h','e','l','l','o'};D、 char str[]={'hello'};2.定义了一维int型数组a[10]后,下面错误得引用就是_B__A、 a[0]=1;B、 a[10]=2;C、 a[0]=5*2;D、 a[1]=a[2]*a[0];3.下面得二维数组初始化语句中,正确得就是____A、 float b[2][2]={0、1,0、2,0、3,0、4};B、 int a[][]={{1,2},{3,4}};C、 int a[2][]= {{1,2},{3,4}};D、 float a[2][2]={0};4.引用数组元素时,数组下标可以就是_D___A、整型常量B、整型变量C、整型表达式D、以上均可5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前得数组元素个数为____A、 24B、 25C、 18D、 176.下列初始化字符数组得语句中,正确得就是__B__A、 char str[5]="hello";B、charstr[]={'h','e','l','l','o','\0'};C、 char str[5]={"hi"};D、 char str[100]="";7.数组在Java中储存在 C 中A、栈B、队列C、堆D、链表8.下面程序得运行结果就是____main() {int a[][]={{1,2,3},{4,5,6}};System、out、printf("%d", a[1][1]);}A、 3B、 4C、 5D、 69.下面程序得运行结果就是_C___main() {int x=30;int[] numbers=new int[x];x=60;System、out、println(numbers、length);}A、 60B、 20C、 30D、 5010.下面程序得运行结果就是__BDF__main() {char s1[]="ABCDEF"、toCharArray();int i=0;while(s1[i++]!='\0')System、out、println(s1[i++]);}A、 ABCDEFB、 BDFC、 ABCDED、 BCDE11.下面不就是创建数组得正确语句CA、float f[][]=new float[6][6];B、float f[]=new float[6];C、float f[][]=new float[][6];D、float [][]f=new float[6][];12.下面不就是数组复制方法得就是(C)A、用循环语句逐个复制数组B、用方法arraycopyC、用"="进行复制D、用clone方法13.数组a得第三个元素表示为DA、 a(3)B、 a[3]C、a(2)D、 a[2]14.当访问无效得数组下标时,会发生BA、中止程序B、抛出异常C、系统崩溃D、直接跳过15.使用arraycopy()方法将数组a复制到b正确得就是AA、 arraycopy(a,0,b,0,a、length)B、 arraycopy(a,0,b,0,b、length)C、、 arraycopy(b,0,a,0,a、length)D、 arraycopy(a,1,b,1,a、length)16.关于数组默认值,错误得就是 BA、 char--'"u0000'B、 Boolean--trueC、 float--0、0fD、 int-- 017.关于数组作为方法得参数时,向方法传递得就是 AA、数组得引用B、数组得栈地址C、数组自身D、数组得元素18.关于数组复制,下列说法错误得就是ACA、 "="可以实现数组复制B、运用循环语句进行数组复制必须两个数组长度相同C、 arraycopy()方法没有给目标数组分配内存空间D、数组复制就是数组引用得传递19.下列语句会造成数组new int[10]越界就是DA、 a[0] += 9;B、 a[9]=10;C、—a[9]D、for(int i=0;i<=10;i++) a[i]++;20.在JDK环境下编译JAVA源程序使用得命令就是(B )A、javaB、javacC、jvmD、tomcatD、子类不能使用父类得构造方法21.main方法就是java Application 程序执行得入口点。

数组选择试题及答案大全

数组选择试题及答案大全

数组选择试题及答案大全一、选择题1. 在Java中,以下哪个是正确声明一个整型数组的方式?A. int[] array;B. int array[];C. both A and BD. None of the above答案:C2. 假设有一个数组`int[] numbers = {1, 2, 3, 4, 5};`,以下哪个表达式会返回数组的长度?A. numbers.lengthB. length(numbers)C. numbers.size()D. numbers.count()答案:A3. 在C语言中,如果定义了一个整型数组`int myArray[5]`,以下哪个索引是有效的?A. 0B. 4C. 5D. -1答案:B4. 下列关于数组的描述,哪个是正确的?A. 数组的大小在声明后可以改变。

B. 数组可以存储不同类型的数据。

C. 数组的元素在内存中是连续存储的。

D. 数组可以没有元素。

答案:C5. 在Python中,以下哪个函数可以用来获取数组中的最大值?A. max()B. max_value()C. find_max()D. get_max()答案:A6. 如果有一个数组`float[] prices = {3.99f, 1.99f, 2.99f};`,以下哪个表达式可以用来计算数组中所有元素的总和?A. sum(prices)B. total(prices)C. prices.sum()D. prices.total()答案:A7. 在JavaScript中,以下哪个方法可以用来修改数组的最后一个元素?A. pop()B. push()C. shift()D. unshift()答案:B8. 下列关于数组排序的描述,哪个是错误的?A. 可以使用冒泡排序算法对数组进行排序。

B. 快速排序算法通常比冒泡排序算法更快。

C. 所有数组排序算法的时间复杂度都是O(n^2)。

D. 归并排序算法是一种稳定的排序算法。

java 实战经典 数组篇习题

java 实战经典 数组篇习题
int number[]={1,5,3,7,8,5,3,9,4,7,3,0,6,3,4,8};
yesno(number,16);*/
* 习题6:给出10个整数(int 型),然后对其赋值,使每个元素的值等于其下标,最后把这个数组倒置
int number[]=new int[10];
* 习题10:在排列好的数组中,插入一个数字
int number_b[]={17,1,2,15,19,10,6,7,8,9};
int a=6;
int b=number_b.length+1;
for(int i=b;i>3;i--){
number_b[i]=number_b[i];
print_arr(newarr);
* 习题4:定义一个整型数组,求出数组元素和,最大值和最小值
int number[]={1,5,3,7,8,5,3,9,4,7,3,0,6,3,4,8};
System.out.print("数组元素和:");
num_num(number);
jsgeshu(a);
* 习题3:求数组oldarr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};把0去掉,存入另一个数组,并且打印
int oldarr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};
int max=0;
for(int i=0;i<arr.length;i++){
max+=arr[i];
}
System.out.print(max);
}
//数组最大值最小值//

java 数组试题

java 数组试题

java 数组试题Java数组是一种用于存储一组相同类型的元素的容器。

它提供了方便的方法来操作和管理数据。

在本文中,将介绍一些关于Java数组的常见试题并给出相关参考内容。

1. 如何声明和初始化一个数组?声明一个数组时,需要指定数组的类型和名称。

初始化数组时,可以使用两种方法,静态初始化和动态初始化。

- 静态初始化:可以在声明数组的同时给数组赋值。

例如:`int[] numbers = {1, 2, 3, 4, 5};`- 动态初始化:先声明数组,然后使用`new`关键字创建数组,并按照需要分配空间。

例如:`int[] numbers = new int[5];`2. 如何访问数组中的元素?数组中的每个元素都有一个唯一的索引值,从0开始递增。

可以使用索引值来访问数组中的元素。

例如:`int[] numbers = {1, 2, 3, 4, 5};`,要访问第一个元素可以使用`numbers[0]`。

3. 如何计算数组的长度?可以使用数组的`length`属性来获取数组的长度。

例如:`int[] numbers = {1, 2, 3, 4, 5}; int length = numbers.length;`4. 如何遍历数组?可以使用循环结构(例如`for`循环、`while`循环)来遍历数组。

例如:```int[] numbers = {1, 2, 3, 4, 5};for(int i = 0; i < numbers.length; i++) {System.out.println(numbers[i]);}```5. 如何查找数组中的最大值和最小值?可以使用循环结构遍历数组,并使用条件语句(例如`if`语句)在遍历过程中找到最大值和最小值。

例如:```int[] numbers = {1, 2, 3, 4, 5};int max = numbers[0];int min = numbers[0];for(int i = 1; i < numbers.length; i++) {if(numbers[i] > max) {max = numbers[i];}if(numbers[i] < min) {min = numbers[i];}}System.out.println("最大值:" + max);System.out.println("最小值:" + min);```6. 如何计算数组中所有元素的和?可以使用循环结构遍历数组,并使用一个变量来记录累加的和。

java数组练习题

java数组练习题

java数组练习题一、基础练习题1. 创建一个名为"numbers"的整型数组,包含以下元素:1, 2, 3, 4, 5。

2. 打印数组中第三个元素的值。

3. 修改数组中第二个元素的值为10。

4. 打印数组中所有元素的值。

二、进阶练习题1. 创建一个名为"grades"的双精度浮点型数组,包含以下元素:78.5, 92.3, 85.6, 88.0。

2. 计算并打印数组中元素的平均值。

3. 找出并打印数组中的最大值和最小值。

4. 创建一个名为"names"的字符串数组,包含以下元素:"Alice", "Bob", "Charlie", "David"。

5. 将"David"替换为"Ethan"。

6. 打印修改后的字符串数组。

三、马拉松比赛练习题一共有10名选手参加马拉松比赛,他们的成绩分别是:1. 135分钟2. 147分钟3. 120分钟4. 155分钟5. 130分钟6. 144分钟7. 118分钟8. 137分钟9. 165分钟10. 152分钟1. 创建一个名为"marathonTimes"的整型数组,包含以上成绩。

2. 计算并打印完成马拉松的选手人数。

3. 计算并打印平均完成时间。

4. 找出并打印完成时间最短和最长的选手成绩。

四、学生成绩练习题某班级有10名学生,他们的成绩如下:1. 89分2. 78分3. 92分4. 85分5. 76分6. 94分7. 81分8. 90分9. 87分10. 95分1. 创建一个名为"studentGrades"的整型数组,包含以上成绩。

2. 计算并打印班级的平均成绩。

3. 找出并打印成绩大于90分的学生数量。

4. 将成绩不及格(低于60分)的学生的成绩替换为60分。

数组测试题及答案

数组测试题及答案

数组测试题及答案一、单选题1. 在Java中,数组的默认初始值是什么?A. 0B. 1C. nullD. 随机值答案:A2. 以下哪个方法可以用来获取数组的长度?A. length()B. size()C. count()D. length答案:D3. 如何在Java中声明一个整型数组?A. int[] array;B. int array[];C. both A and BD. neither A nor B答案:C二、填空题1. 在Java中,声明一个大小为10的整型数组,可以使用语句:________。

答案:int[] array = new int[10];2. 如果有一个数组arr,要访问数组的最后一个元素,可以使用索引:________。

答案:arr.length - 1三、判断题1. 数组的索引是从1开始的。

()答案:错误2. 数组的大小在声明后可以改变。

()答案:错误3. 多维数组可以看作是数组的数组。

()答案:正确四、简答题1. 请简述Java中数组和ArrayList的区别。

答案:数组是固定大小的,而ArrayList是动态大小的;数组可以存储基本数据类型和对象,而ArrayList只能存储对象;数组在声明时必须指定大小,而ArrayList可以随着元素的添加自动增长。

2. 如何在Java中反转一个数组?答案:可以使用循环交换数组两端的元素,或者使用Arrays类的reverse方法。

结束语本试题涵盖了数组的基本概念、操作和特性,旨在帮助考生理解和掌握Java中数组的使用。

希望考生通过这些题目能够加深对数组的理解,并在实际编程中灵活运用。

java 数组练习题

java 数组练习题

java 数组练习题Java 数组练习题Java 是一种广泛应用于软件开发的编程语言,而数组则是 Java 中常用的数据结构之一。

数组可以用来存储一系列相同类型的数据,它提供了便捷的访问和操作方式。

在这篇文章中,我们将通过一些实际的练习题来巩固和提升对 Java 数组的理解和应用。

1. 数组元素求和首先,我们来考虑一个简单的问题:给定一个整数数组,如何计算数组中所有元素的和呢?我们可以使用一个循环遍历数组,并将每个元素累加到一个变量中。

以下是一个示例代码:```javaint[] nums = {1, 2, 3, 4, 5};int sum = 0;for (int i = 0; i < nums.length; i++) {sum += nums[i];}System.out.println("数组元素的和为:" + sum);```2. 数组元素查找接下来,我们考虑一个查找问题:给定一个整数数组和一个目标值,如何确定目标值是否存在于数组中?我们可以使用一个循环遍历数组,并逐个比较元素与目标值是否相等。

以下是一个示例代码:```javaint[] nums = {1, 2, 3, 4, 5};int target = 3;boolean found = false;for (int i = 0; i < nums.length; i++) {if (nums[i] == target) {found = true;break;}}if (found) {System.out.println("目标值存在于数组中");} else {System.out.println("目标值不存在于数组中");}```3. 数组元素排序排序是数组操作中常见的需求之一。

Java 提供了多种排序算法,如冒泡排序、选择排序和插入排序等。

这里我们以冒泡排序为例,来演示如何对数组元素进行排序。

Java数组练习题(带答案)培训讲学

Java数组练习题(带答案)培训讲学

J a v a数组练习题(带答案)1)数组的元素通过下标来访问,数组Array的长度为 Array.length 。

2)数组复制时,"="将一个数组的引用传递给另一个数组。

3)JVM将数组存储在栈 (堆或栈)中。

4)数组的二分查找法运用的前提条件是数组已经排序。

5)Java中数组的下标的数据类型是整型。

6)数组最小的下标是 0 。

7)arraycopy()的最后一个参数指明复制元素的个数。

8)向方法传递数组参数时,传递的是数组的引用。

9)数组初始化包括数组的申明,创建和初始化。

10)数组下标访问超出索引范围时抛出数组越界异常11)浮点型数组的默认值是 0.0f 。

12)数组创建后其大小不能改变。

二选择题1.下面错误的初始化语句是_ABD__A. char str[]="hello";B. char str[100]="hello";C. char str[]={'h','e','l','l','o'};D. char str[]={'hello'};2.定义了一维int型数组a[10]后,下面错误的引用是_B__3. A. a[0]=1; B. a[10]=2; C. a[0]=5*2; D. a[1]=a[2]*a[0];4.下面的二维数组初始化语句中,正确的是____5. A. float b[2][2]={0.1,0.2,0.3,0.4}; B. int a[][]={{1,2},{3,4}};6. C. int a[2][]= {{1,2},{3,4}}; D. float a[2][2]={0};7.引用数组元素时,数组下标可以是_D___8. A. 整型常量 B. 整型变量 C. 整型表达式 D. 以上均可9.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为____A. 24B. 25C. 18D. 1710.下列初始化字符数组的语句中,正确的是__B__11.A. char str[5]="hello"; B. char str[]={'h','e','l','l','o','\0'};12.C. char str[5]={"hi"}; D. char str[100]="";13.数组在Java中储存在 C 中14.A. 栈 B. 队列 C. 堆D. 链表15.下面程序的运行结果是____main() {int a[][]={{1,2,3},{4,5,6}};System.out.printf("%d", a[1][1]);}A. 3B. 4C. 5D. 616.下面程序的运行结果是_C___int x=30;int[] numbers=new int[x];x=60;System.out.println(numbers.length);}A. 60B. 20C. 30D. 5018.下面程序的运行结果是__BDF__19.main() {20.char s1[]="ABCDEF".toCharArray();21.int i=0;22.while(s1[i++]!='\0')System.out.println(s1[i++]);}A. ABCDEFB. BDFC. ABCDED. BCDE23.下面不是创建数组的正确语句C24. A.float f[][]=new float[6][6]; B.float f[]=new float[6];25. C.float f[][]=new float[][6]; D.float [][]f=new float[6][];26.下面不是数组复制方法的是(C)A. 用循环语句逐个复制数组B. 用方法arraycopyC. 用"="进行复制D. 用clone方法27.数组a的第三个元素表示为DA. a(3)B. a[3]C.a(2)D. a[2]28.当访问无效的数组下标时,会发生BA. 中止程序B. 抛出异常C. 系统崩溃D. 直接跳过29.使用arraycopy()方法将数组a复制到b正确的是AA. arraycopy(a,0,b,0,a.length)B. arraycopy(a,0,b,0,b.length)C.. arraycopy(b,0,a,0,a.length)D. arraycopy(a,1,b,1,a.length)30.关于数组默认值,错误的是 BA. char--'"u0000'B. Boolean--trueC. float--0.0fD. int-- 031.关于数组作为方法的参数时,向方法传递的是 AA. 数组的引用B. 数组的栈地址C. 数组自身D. 数组的元素32.关于数组复制,下列说法错误的是ACA. "="可以实现数组复制B. 运用循环语句进行数组复制必须两个数组长度相同C. arraycopy()方法没有给目标数组分配内存空间D. 数组复制是数组引用的传递33.下列语句会造成数组new int[10]越界是DA. a[0] += 9;B. a[9]=10;C. —a[9]D. for(int i=0;i<=10;i++) a[i]++;34.在JDK环境下编译JAVA源程序使用的命令是(B )A.javaB.javacC.jvmD.tomcatD. 子类不能使用父类的构造方法35.main方法是java Application 程序执行的入口点。

java 数组试题

java 数组试题

java 数组试题Java 数组是一种非常常见的数据结构,是一组具有相同类型和固定大小的数据元素集合。

数组在 Java 中是一种对象,由连续的内存地址组成,用于创建单一数据类型的变量。

在Java 中,数组的下标从 0 开始计数,可以存储基本数据类型或其他对象类型。

使用数组有很多好处,如提高程序的效率和简化代码编写流程等。

下面是一些 Java 数组的相关试题及其参考内容。

1. 如何声明数组?声明一个数组需要指定数组的类型和长度。

以下是一些示例代码:int[] intArr = new int[10];double[] doubleArr = new double[5];String[] strArr = new String[3];这些声明语句创建了三个不同的数组,分别存储 int、double 和 String 类型的数据。

这些数组的长度分别为 10、5 和 3。

2. 如何初始化数组?可以通过两种方法初始化数组:逐个赋初始值或使用数组初始化器。

以下是一些示例代码:int[] intArr = new int[3];intArr[0] = 1;intArr[1] = 2;intArr[2] = 3;int[] intArr2 = {1, 2, 3};这两个数组都存储了相同的值,但是它们的初始化方式不同。

3. 如何遍历数组?可以使用 for 循环或 foreach 循环遍历数组。

以下是一些示例代码:int[] intArr = {1, 2, 3};for (int i = 0; i < intArr.length; i++) {System.out.println(intArr[i]);}int[] intArr = {1, 2, 3};for (int i : intArr) {System.out.println(i);}这两个循环语句都遍历了 intArr 数组,并且输出了其中的每一个元素。

java 数组试题

java 数组试题

java 数组试题1. 如何创建一个空数组?可以使用以下语法创建一个空数组:```int[] array = new int[0];```2. 如何检查数组中是否包含某个值?可以使用循环遍历数组并查找值的方法,例如:```int[] array = {1, 2, 3, 4, 5};int valueToFind = 3;boolean containsValue = false;for (int i = 0; i < array.length; i++) {if (array[i] == valueToFind) {containsValue = true;break;}}if (containsValue) {System.out.println("Value found in array!");} else {System.out.println("Value not found in array.");}```3. 如何计算数组中元素的平均值?可以使用循环遍历数组并累加元素值的方法,然后除以元素数量。

例如:```int[] array = {1, 2, 3, 4, 5};double sum = 0;for (int i = 0; i < array.length; i++) {sum += array[i];}double average = sum / array.length;System.out.println("Average: " + average);```4. 如何将一个数组复制到另一个数组?可以使用数组的 copyOfRange() 方法。

例如:```int[] sourceArray = {1, 2, 3, 4, 5};int[] targetArray = Arrays.copyOfRange(sourceArray, 0,sourceArray.length);```5. 如何将数组元素反转?可以使用循环遍历数组并交换元素的方法。

Java基础——数组练习题

Java基础——数组练习题

1.从键盘接受10个整数,求出其中的最大值和最小值。

2.输入10个数,保存在一个数组中,在数组中查找某个数字,给出是否找到信息,如果
找到了输出该数在数组中所处的位置,如果找不到输出“找不到”
3.如果一个数组保存元素是有序的(从大到小),向这个数组中插入一个数,使得插入后
的数组元素仍然保持有序。

4.将一个数组中的元素逆序输出,即第一个元素和最后一个元素交换,第二个数与倒数第
二元素交换…..,例如:原数组为:9 2 5 7 8,逆序后的数组为:8 7 5 2 9 5.顾客从超市采购了10件商品,编写一个程序,用于接受每件商品的价格,计算应付的
总金额。

并分别打印出各个商品的价格以及应付的总金额的小票。

6.有一个排好序的数组,要求输入一个数,在数组中查找是否有这个数,如果有,将改数
从数组中删除,要求删除后的数组仍然保持有序,如果没有,则输出“数组中没有这个数”
7.编写一个程序,用于接受两个数组的值,将这两个数组中的值一次相加保存在第三个数
组中。

8.输入数组中的值,将数组中的最小值与第一个元素交换,最大值与最后一个元素交换,
输出数组。

9.某公司采用公用电话传递数据,数据是4位整数,在传递过程中是加密的,加密规则如
下:每位上的数字加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换,编写一个程序,用于接受一个4位整数,并且打印输出加密后的数字
10.输入一个5位的正整数,使用数组判断它是不是回文数(例如:12321是回文数)。

java数组选择题附加答案解析

java数组选择题附加答案解析

Java数组选择题附加答案解析1. 下列哪个选项正确描述了Java数组?A. 数组可以包含不同类型的元素。

B. 数组的大小可以在运行时改变。

C. 数组的元素必须是相同类型的数据。

D. 数组的索引可以是负数。

答案: C。

解析:在Java中,数组的元素必须是相同类型的数据。

2. 给定以下Java数组的声明和初始化:javaint[] arr = {1, 2, 3};下列哪个选项初始化了一个与’arr’相同的数组?A. ‘int[] newArr = new int[3];’B. ‘int[] newArr = {1, 2, 3};’C. ‘int[] newArr = arr;’D. ‘int[] newArr = new int[]{1, 2, 3};’答案: D。

解析:选项D 初始化了一个与‘arr’相同的数组,并且也使用了初始化数组的方式。

3. 给定以下Java代码片段:javaint[] arr = {5, 3, 9, 1, 7};表达式’arr.length’的值是:A. 5B. 4C. 6D. 10答案: A。

解析:’arr.length’表示数组’arr’的长度,即数组中元素的个数,这里是5。

4. 给定以下Java数组的声明和初始化:javaint[] arr = new int[4];arr[0] = 1;arr[1] = 3;arr[2] = 5;arr[3] = 7;表达式’arr[2]’的值是:A. 1B. 3C. 5D. 7答案: C。

解析:’arr[2]’表示数组’arr’中索引为2的元素,即第三个元素,其值为5。

5. 给定以下Java数组的声明和初始化:javaint[] arr = {2, 4, 6, 8};下列哪个选项正确实现了对数组’arr’的遍历?A.javafor (int i = 0; i <= arr.length; i++) {System.out.println(arr[i]);}B.javafor (int i = 0; i < arr.length; i++) {System.out.println(arr[i]);}C.javafor (int i = 1; i <= arr.length; i++) {System.out.println(arr[i]);}D.javafor (int i = 0; i < arr.length - 1; i++) {System.out.println(arr[i]);}答案: B。

java 数组试题

java 数组试题

java 数组试题在Java中,数组是一种存储固定大小的相同类型元素的数据结构。

它允许我们以连续的方式存储和访问多个元素,而无需为每个元素单独声明变量。

数组在解决许多问题时非常有用,例如排序、搜索、过滤等。

下面是一些Java数组的常见试题和相关参考内容:1. 如何创建和初始化数组:- 创建数组:可以使用Array类的静态方法`newInstance()`或直接使用数组的语法来创建数组。

示例:`int[] arr = new int[5];` 或 `int[] arr = new int[]{1, 2, 3, 4, 5};`- 初始化数组:可以在创建数组时直接为元素赋值,也可以使用循环将值赋给每个元素。

示例:`int[] arr = new int[]{1, 2, 3, 4, 5};`2. 如何访问数组元素:- 使用索引:数组中每个元素都有一个唯一的索引,从0开始。

可以使用`[]`操作符和索引访问数组元素。

示例:`int value = arr[0];`- 遍历数组:可以使用for循环或增强for循环来遍历数组。

示例:```javafor (int i = 0; i < arr.length; i++) {System.out.println(arr[i]);}``````javafor (int value : arr) {System.out.println(value);}```3. 如何获取数组的长度:- 使用`length`属性:可以使用数组的`length`属性来获取数组的长度。

示例:`int length = arr.length;`4. 如何修改数组元素的值:- 直接赋值:可以使用赋值语句来修改数组的元素值。

示例:`arr[0] = 10;`5. 如何查找数组中的最大值和最小值:- 遍历数组:通过遍历数组,使用一个变量记录当前找到的最大或最小值。

示例:```javaint max = arr[0];int min = arr[0];for (int i = 1; i < arr.length; i++) {if (arr[i] > max) {max = arr[i];}if (arr[i] < min) {min = arr[i];}}```6. 如何查找数组中的某个元素:- 遍历数组:通过遍历数组,使用条件判断查找具体的元素。

Java数组练习题带答案

Java数组练习题带答案

填空题一 length 。

来访问,数组Array得长度为 Array、1)数组得元素通过下标传递给另一个数组。

?将一个数组得引用 2)数组复制时,中。

栈(堆或栈)3)JVM将数组存储在。

数组得二分查找法运用得前提条件就是数组已经排序 4)。

中数组得下标得数据类型就是整型 5)Java。

6)数组最小得下标就是 0。

得最后一个参数指明复制元素得个数 7)arraycopy()向方法传递数组参数时,传递得就是数组得引用。

8)数组得申明,创建与初始化。

9)数组初始化包括数组越界异常10)数组下标访问超出索引范围时抛出 0、0f 。

11)浮点型数组得默认值就是不能改变。

12)数组创建后其大小二选择题_ABD__1.下面错误得初始化语句就是 char str[100]=hello;B、A、 char str[]=hello;C、 char str[]={'h','e','l','l','o'};D、 char str[]={'hello'};___B定义了一维int型数组a[10]后,下面错误得引用就是2. 、 a[0]=5*2; C、、 a[0]=1; D、a[1]=a[2]*a[0];B a[10]=2;A____下面得二维数组初始化语句中,正确得就是3.4}}; 、3,0、4}; B、A、 float b[2][2]={01,0、2,0、 float a[2][2]={0};、 DC、 4}};_D___4.引用数组元素时,数组下标可以就是以上均可 D A、整型常量、整型表达式、 B、整型变量 C____前得数组元素个数为型二维数组a[6][7]后,数组元素a[3][4]5.定义了int C、 18 D、17 B、 25 、A 24____B6.下列初始化字符数组得语句中,正确得就是 char str[5]=hello; char、 B A、str[]={'h','e','l','l','o','\0'};char str[100]=\;C 、、D char str[5]={hi};Java中储存在 C 中数组在7.队列 B、 C、、D 链表堆栈、A____下面程序得运行结果就是8.main() {5,6}};printf(%d, a[1][1]);out、、 System}6 A、、 4 C、、 3 B 5 D_C___下面程序得运行结果就是9.main() {int x=30;int[] numbers=new int[x];x=60;System、out、println(numbers、length);}A、 60B、 20C、 30D、 5010.下面程序得运行结果就是__BDF__main() {档牡猠嬱????屆、toCharArray();int i=0;while(s1[i++]!='\0')System、out、println(s1[i++]);}A、 ABCDEFB、 BDFC、 ABCDED、 BCDE11.下面不就是创建数组得正确语句CA、float f[][]=new float[6][6];B、float f[]=new float[6];C、float f[][]=new float[][6]; 、 Dfloat[6][]; [][]f=new float(C) 下面不就是数组复制方法得就是12.arraycopy 用方法B 用循环语句逐个复制数组、 A、方法?进行复制clone用、D C、用D a得第三个元素表示为数组13.a[2]、、 A、 a(3)B a[3]C、a(2) DB 14.当访问无效得数组下标时,会发生中止程序直接跳过D、系统崩溃 B、抛出异常 C、 A、Ab正确得就是复制到使用15.arraycopy()方法将数组alength) 、、 arraycopy(a,0,b,0,a、length) B、 arraycopy(a,0,b,0,b Alength) arraycopy(a,1,b,1,alength)D、、 arraycopy(b,0,a,0,a C、、、 B16.关于数组默认值,错误得就是 int-- 、、 A char--'、 Boolean--true C float--0、0f D、0A关于数组作为方法得参数时,向方法传递得就是17. 、 D 数组得元素数组自身、数组得栈地址、数组得引用、 A B CAC 关于数组复制,下列说法错误得就是18.可以实现数组复制尠尽 A、运用循环语句进行数组复制必须两个数组长度相同、 B方法没有给目标数组分配内存空间 arraycopy()、 C.D、数组复制就是数组引用得传递19.下列语句会造成数组new int[10]越界就是DA、 a[0] += 9;B、 a[9]=10;C、—a[9]D、 for(inti=0;i<=10;i++) a[i]++;(B )源程序使用得命令就是在JDK环境下编译JAVA20.tomcat、javac CjvmD、A、java B、 D、子类不能使用父类得构造方法21.main方法就是java Application 程序执行得入口点。

java数组与异常处理复习题

java数组与异常处理复习题

第五、六章习题一、选择题1.下列关于数组的定义形式,哪些是错误的?(ABC)A.int[ ]c=new char[10]; B.int[ ][3]=new int[2][ ];C.int[ ]a; a=new int; D.char b[ ]; b=new char[80];2.执行String[] s=new String[10];语句后,哪些结论是正确的?(BC )A.s[0] 为未定义 B.s.length 为10C.s[9] 为 null D.s[10] 为 ""3.下列关于Java语言的数组描述中,错误的是(D)。

A.数组的长度通常用length表示 B.数组下标从0开始C.数组元素是按顺序存放在内存的 D.数组在赋初值和赋值时都不判界4.下面的表达式哪些是正确的? (ACE)A.String s="你好";int i=3; s+=i;B.String s="你好";int i=3; if(i==s){ s+=i};C.String s="你好";int i=3; s=i+s;D.String s="你好";int i=3; s=i+;E. String s=null; int i=(s!=null)&&(s.length()>0)?s.length():0;5.public class T18 {static int arr[] = new int[10];public static void main(String a[]) {System.out.println(arr[1]);}}哪个语句是正确的?(C)A.编译时将产生错误 B.编译时正确,运行时将产生错误C.输出零 D.输出空6.若String s = "hello"; String t = "hello"; char c[] = {'h','e',' l','l','o'} ; 则下列哪些表达式返回true?(AB)7.指出正确的表达式有(AB)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一填空题1)数组的元素通过下标来访问,数组Array的长度为Array.length 。

2)数组复制时,"="将一个数组的引用传递给另一个数组。

3)JVM将数组存储在栈(堆或栈)中。

4)数组的二分查找法运用的前提条件是数组已经排序。

5)Java中数组的下标的数据类型是整型。

6)数组最小的下标是0 。

7)arraycopy()的最后一个参数指明复制元素的个数。

8)向方法传递数组参数时,传递的是数组的引用。

9)数组初始化包括数组的申明,创建和初始化。

10)数组下标访问超出索引范围时抛出数组越界异常11)浮点型数组的默认值是0.0f 。

12)数组创建后其大小不能改变。

二选择题1.下面错误的初始化语句是_ABD__A. char str[]="hello";B. char str[100]="hello";C. char str[]={'h','e','l','l','o'};D. char str[]={'hello'};2.定义了一维int型数组a[10]后,下面错误的引用是_B__A. a[0]=1;B. a[10]=2;C. a[0]=5*2;D. a[1]=a[2]*a[0];3.下面的二维数组初始化语句中,正确的是____A. float b[2][2]={0.1,0.2,0.3,0.4};B. int a[][]={{1,2},{3,4}};C. int a[2][]= {{1,2},{3,4}};D. float a[2][2]={0};4.引用数组元素时,数组下标可以是_D___A. 整型常量B. 整型变量C. 整型表达式D. 以上均可5.定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为____A. 24B. 25C. 18D. 176.下列初始化字符数组的语句中,正确的是__B__A. char str[5]="hello";B. char str[]={'h','e','l','l','o','\0'};C. char str[5]={"hi"};D. char str[100]="";7.数组在Java中储存在 C 中A. 栈B. 队列C. 堆D. 链表8.下面程序的运行结果是____main() {int a[][]={{1,2,3},{4,5,6}};System.out.printf("%d", a[1][1]);}A. 3B. 4C. 5D. 69.下面程序的运行结果是_C___main() {int x=30;int[] numbers=new int[x];x=60;System.out.println(numbers.length);}A. 60B. 20C. 30D. 5010.下面程序的运行结果是__BDF__main() {char s1[]="ABCDEF".toCharArray();int i=0;while(s1[i++]!='\0')System.out.println(s1[i++]);}A. ABCDEFB. BDFC. ABCDED. BCDE11.下面不是创建数组的正确语句CA.float f[][]=new float[6][6];B.float f[]=new float[6];C.float f[][]=new float[][6];D.float [][]f=new float[6][];12.下面不是数组复制方法的是(C)A. 用循环语句逐个复制数组B. 用方法arraycopyC. 用"="进行复制D. 用clone方法13.数组a的第三个元素表示为DA. a(3)B. a[3]C.a(2)D. a[2]14.当访问无效的数组下标时,会发生BA. 中止程序B. 抛出异常C. 系统崩溃D. 直接跳过15.使用arraycopy()方法将数组a复制到b正确的是AA. arraycopy(a,0,b,0,a.length)B. arraycopy(a,0,b,0,b.length)C.. arraycopy(b,0,a,0,a.length)D. arraycopy(a,1,b,1,a.length)16.关于数组默认值,错误的是BA. char--'"u0000'B. Boolean--trueC. float--0.0fD. int-- 017.关于数组作为方法的参数时,向方法传递的是AA. 数组的引用B. 数组的栈地址C. 数组自身D. 数组的元素18.关于数组复制,下列说法错误的是ACA. "="可以实现数组复制B. 运用循环语句进行数组复制必须两个数组长度相同C. arraycopy()方法没有给目标数组分配内存空间D. 数组复制是数组引用的传递19.下列语句会造成数组new int[10]越界是DA. a[0] += 9;B. a[9]=10;C. —a[9]D. for(int i=0;i<=10;i++) a[i]++;20.在JDK环境下编译JAVA源程序使用的命令是(B )A.javaB.javacC.jvmD.tomcatD. 子类不能使用父类的构造方法21.main方法是java Application 程序执行的入口点。

关于main方法放入方法以下合法的是( )A. public static void main();B. public static void main(String[]args)C. public static int main(String[] arg)D. public void main(String arg[])22.执行完代码"int[] x=new int[25];"后以下( A )说明正确的A. x[24]为0B. x[24]未定义C. x[25]为0D. x[0]为空23.关于数组排序方法,错误的是CA. 选择排序B. 插入排序C. 二分排序D. 用arrays.sort( )排序24.关于char类型的数组,说法正确的是DA. 其数组的默认值是'A'B. 可以仅通过数组名来访问数组C. 数组不能转换为字符串D. 可以存储整型数值25.对于数组a[10],下列表示错误的是BA. a[0]B. a(0)C. a[9]D. a[1]26.下列数组声明,下列表示错误的是A. int[] aB. int a[]C. int[][] aD. int[]a[]三、是非题1.下标用于指出数组中某个元素位置的数字。

( )2.把数组中元素按某种顺序排列的过程叫做查找。

( )3.确定数组中是否含有某个关键字的过程叫做排序。

( )4.一个数组可以存放许多不同类型的数值。

( )5.数组的下标通常是float型。

( )6.数组的某个元素被传递给一个方法并被该方法修改,当被调用方法执行完毕时,这个元素中含有修改过的数值。

( )7.数组可以声明为任何数据类型。

( )8.数组由具有一名字和相同类型的一组连续内存单元构成。

( )9.在数组声明中可以用等号及一个逗号分隔的初始值表初始化数组元素,该数组大小只能由用户来决定。

( )10.将一个数组传递给一个方法,必须加在数组名后加方括号。

( )11.Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。

( )12.下面这条语句正确吗?( )double[] myList;myList = {1.9, 2.9, 3.5, 4.6};14. 数组中有length()这个方法,如array.length()表示数组array中元素的个数( )15.下面这条语句正确吗?( )int t[3][2] = {{1,2},{3,4},{5,6}};16.数组声明后其大小固定。

( )17.设有整型数组的定义:int A.[]=new int[8]; ,则a.length的值为7。

( )18. 数组一旦创建,其大小不能再改变。

( )19.用任何方式创建数组时,都必须指定数组的长度。

( )20.声明数组时,要指定数组长度,以便为数组分配内存。

( )四、简答题1. 如何声明和创建一个一维数组?2. 如何访问数组的元素?3.数组下标的类型是什么?最小的下标是什么?一维数组a的第三个元素如何表示?4.数组越界访问会发生什么错误?怎样避免该错误?5.给方法传递数组参数与传递基本数据类型变量的值有何不同?6.复制数组有哪些方法?8.声明数组变量会为数组分配内存空间吗?为什么?五、程序题1.有一个整数数组,其中存放着序列1,3,5,7,9,11,13,15,17,19。

请将该序列倒序存放并输出。

1)public class Test {2)public static void main(String[] args) {3)int a[] = {1,3,5,7,9,11,13,15,17,19};4)int t;5)System.out.println("数组的初始状态为:");6)for (int i=0; i < a.length; i++)7)System.out.print(" " + a[i]);8)System.out.println();9)10)for (int i=0; i < a.length/2; i++) {11)t = a[i];12)a[i] = a[a.length-i-1];13)a[a.length-i-1]=t;14)}15)16)System.out.println("数组逆序存放后的状态为:");17)for (int i=0; i < a.length; i++)18)System.out.print(" " + a[i]);19)}20)}2.编写一个程序,提示用户输入学生数量姓名和他们的成绩,并按照成绩的降序来打印学生的姓名。

1)public class exercise16 {2)public static void main(String[] args) {3)String numberString =4)JOptionPane.showInputDialog("Enter the number of students");5)int numberOfStudents = Integer.parseInt(numberString);6)7)String[] names = new String[numberOfStudents];8)double[] scores = new double[numberOfStudents];9)10)for (int i = 0; i < scores.length; i++) {11)names[i] = JOptionPane.showInputDialog("Enter a student name");12)scores[i] = Double.parseDouble(13)JOptionPane.showInputDialog("Enter a student score"));14)}15)16)for (int i = scores.length - 1; i >= 1; i--) {17)double currentMax = scores[0];18)int currentMaxIndex = 0;19)20)for (int j = 1; j <= i; j++) {21)if (currentMax < scores[j]) {22)currentMax = scores[j];23)currentMaxIndex = j;24)}25)}26)27)if (currentMaxIndex != i) {28)scores[currentMaxIndex] = scores[i];29)scores[i] = currentMax;30)String temp = names[currentMaxIndex];31)names[currentMaxIndex] = names[i];32)names[i] = temp;33)}34)}35)36)for (int i = scores.length - 1; i >= 0; i--) {37)System.out.println(names[i] + "\t" + scores[i]);38)}39)}40)}3.编写一个程序,使它能够读入10个整数,并且存储其中互不相同的数,最后将这10个数输出。

相关文档
最新文档