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

合集下载

java 数组试题

java 数组试题

java 数组试题Java 数组是一种基本的数据结构,在 Java 编程中经常会使用到。

数组是一组同类型数据的集合,可以通过下标来访问数组中的元素。

Java 数组是静态的,也就是说一旦数组声明后,它的长度就无法更改。

本文将介绍 Java 数组的一些常见试题及参考答案,希望对 Java 学习者有所帮助。

1. 如何创建一个数组?在 Java 中创建一个数组,需要使用关键字 new 来申请数组空间。

例如,如下代码可以创建长度为 5 的整型数组:```int[] arr = new int[5];```2. 如何计算数组的长度?在 Java 中,可以使用 length 属性来获取数组的长度。

例如,如下代码可以获取数组 arr 的长度:```int len = arr.length;```3. 如何遍历数组?Java 有很多方法可以遍历数组,如下列举两种常见的方法:(1) for 循环:```for (int i = 0; i < arr.length; i++) {System.out.println(arr[i]);}```(2) for-each 循环:```for (int i : arr) {System.out.println(i);}```4. 如何对数组进行排序?Java 提供了 Arrays 类来实现对数组的排序。

例如,如下代码可以对整型数组 arr 进行升序排序:```Arrays.sort(arr);```5. 如何将数组转化为字符串?Java 中,可以使用 Arrays 类的 toString() 方法将数组转换为字符串。

例如,如下代码将数组 arr 转化为字符串:```String str = Arrays.toString(arr);```6. 如何取数组中的最大值和最小值?Java 中,可以使用 Arrays 类的 sort() 方法将数组排序,并选择第一个和最后一个元素来获取最小值和最大值。

Java程序设计(数组)期末单元测试与答案

Java程序设计(数组)期末单元测试与答案

一、单选题1、Java数组存放在()中。

A.链表B.栈C.队列D.堆正确答案:D2、当访问无效的数组下标时,系统会()。

A.系统崩溃B.中止程序C.抛出异常D.直接跳过正确答案:C3、int arra[] = new int[5]; 下列说法不正确的是()。

A.一共有5个元素B.数组的元素类型都是整型C.数组元素4和数组的第四个元素的值相等D.数组的下标时0-4正确答案:C4、在Java中,通过()可以获得数组长度。

A.length()B.lengthC.sizeD.size()正确答案:B5、设有定义语句int a[]={1,1,2};则以下对此语句的叙述错误的是()。

A.定义了一个名为a的一维数组B.数组中的每个元素是整型C.a数组有3个元素D.a数组的下标为1~3正确答案:D6、定义了int型二维数组a[6][7]后,数组元素a[3][4]前的数组元素个数为()。

A.18B.25C.24D.17正确答案:B二、填空题1、已知:int a[]={2,4,6,8};则:表达式(a[0]+=a[1])+ ++a[2]值为()。

正确答案:132、以下程序输出结果为()。

int a[] = { 1, 3, 9, 5, 7, 4, 2, 8 };int num = 0;for(int i = 0; i <a.length; i++){if(a[i]==a[0]){num++;}}System.out.println(num);正确答案:13、在Java中,数组创建成功以后,其大小()(能/不能)改变。

正确答案:不能4、在Java中,用任何形式创建数组时,都必须指定数组的()。

正确答案:长度5、在Java中,不论是一维数组还是多维数组,下标都是从()开始。

正确答案:06、在Java语言中,二维数组的两个中括号[][]分别表示()和()。

正确答案:行,列7、在初始化二维数组时,可以只指定数组的()而不给出数组的(),每一行的长度由二维数组引用时决定。

java 数组选择题

java 数组选择题

java 数组选择题Java 数组选择题是指与Java 数组相关的选择题,主要用于测试或考察对Java 数组的概念、用法和相关操作的掌握程度。

这些选择题通常包括单选和多选两种类型,涵盖了数组的声明、初始化、访问、修改、排序、搜索等各个方面。

以下是一些示例的 Java 数组选择题:1.在 Java 中,一个一维整数数组的最常用声明方法是()A. int array[]B. int array[3]C. array[] intD. array int2.下列哪个选项是正确的数组初始化方式?()A. int[] array = new int[5];B. int[] array = {1, 2, 3, 4, 5};C. array[] = new int[5];D. array[] = {1, 2, 3, 4, 5};3.下列哪个操作不能在 Java 数组中执行?()A. 访问数组元素B. 修改数组元素的值C. 将数组作为参数传递给方法D. 在数组中添加或删除元素4.若要按升序对一个整数数组进行排序,应使用哪种排序算法?()A. 选择排序B. 冒泡排序C. 插入排序D. 快速排序5.下列哪个选项是正确的数组长度获取方式?()A. array.lengthB. array.size()C. array.length()D. array.size总结来说,Java 数组选择题指的是与Java 数组相关的选择题,用于测试或考察对 Java 数组的概念、用法和相关操作的掌握程度。

这些选择题通常包括单选和多选两种类型,涵盖了数组的声明、初始化、访问、修改、排序、搜索等各个方面。

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 程序执行得入口点。

java数组习题答案

java数组习题答案

java数组习题答案Java数组习题答案在学习Java编程语言的过程中,数组是一个非常重要的概念。

它是一种用来存储相同类型数据的数据结构,可以帮助我们更有效地管理和操作数据。

在学习数组的过程中,我们经常会遇到一些习题,通过解答这些习题可以加深对数组的理解,提高编程能力。

下面我们来看一些常见的Java数组习题及其答案:1. 如何声明一个数组?答:可以使用以下语法来声明一个数组:```javaint[] arr = new int[5];```2. 如何初始化一个数组?答:可以使用以下语法来初始化一个数组:```javaint[] arr = {1, 2, 3, 4, 5};```3. 如何访问数组中的元素?答:可以使用以下语法来访问数组中的元素:```javaint[] arr = {1, 2, 3, 4, 5};System.out.println(arr[2]); // 输出3```4. 如何计算数组中元素的和?答:可以使用以下代码来计算数组中元素的和:```javaint[] arr = {1, 2, 3, 4, 5};int sum = 0;for (int i = 0; i < arr.length; i++) {sum += arr[i];}System.out.println("数组元素的和为:" + sum);```5. 如何找出数组中的最大值和最小值?答:可以使用以下代码来找出数组中的最大值和最小值:```javaint[] arr = {1, 2, 3, 4, 5};int 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];}}System.out.println("数组中的最大值为:" + max);System.out.println("数组中的最小值为:" + min);```通过解答这些习题,我们可以更加深入地理解和掌握Java数组的相关知识,提高自己的编程能力。

java 数组试题

java 数组试题

java 数组试题Java数组是一种能够存储多个变量值的数据结构,它的每个元素都存储在连续的内存空间中,并且每个元素都能通过数组名和下标的组合来访问。

Java数组的创建在Java中创建数组,需要通过指定数组类型和数组长度两个参数来实现。

例如,如果要创建一个长度为10的整型数组,可以使用以下代码:```int[] array = new int[10]; // 创建一个长度为10的整型数组```数组下标是从0开始的,因此可以通过下标访问数组元素,例如:```array[0] = 100; // 第一个元素的下标为0,将其赋值为100 System.out.println(array[0]); // 输出第一个元素的值```Java数组的遍历Java数组的遍历可以使用for循环或者增强for循环来实现。

例如,以下代码演示了如何使用for循环遍历数组:```int[] array = new int[]{1, 2, 3, 4, 5}; // 创建一个包含5个元素的整型数组for(int i=0; i<array.length; i++) { // 遍历数组int element = array[i]; // 获取当前元素的值System.out.println(element); // 输出当前元素的值}```使用增强for循环遍历数组时,可以直接获取数组中的元素值,例如:```int[] array = new int[]{1, 2, 3, 4, 5}; // 创建一个包含5个元素的整型数组for(int element : array) { // 遍历数组System.out.println(element); // 输出当前元素的值}```Java数组的排序Java数组的排序可以使用Arrays类中的sort()方法。

例如,以下代码演示了如何使用sort()方法对数组进行排序:```int[] array = new int[]{4, 2, 7, 5, 1}; // 创建一个包含5个元素的整型数组Arrays.sort(array); // 对数组进行排序for(int element : array) { // 遍历数组System.out.println(element); // 输出当前元素的值}```Java数组的复制Java数组的复制可以使用Arrays类中的copyOf()方法。

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数组基础练习题定义⼀个int[] a ={4,2,0,-1,-8,23,9}求数组元素的最⼤值、最⼩值、平均数、总和、数组的复制、反转1//3.定义⼀个int[] a ={4,2,0,-1,-8,23,9}求数组元素的最⼤值、最⼩值、平均数、总和、数组的复制、反转23int arr4[]={4,2,0,-1,-8,23,9};4int max = arr[0];5int min1=arr[0];6double age=0;7int sum=0;8//最⼤最⼩值9for(int i=0;i<arr4.length;i++){10if(max<arr4[i]){11 max=arr4[i];1213 }if(min1>arr4[i]){14 min1=arr4[i];151617 }1819 }20 System.out.println("最⼤值为"+max);21 System.out.println("最⼩值为"+min1);2223//总数24for(final int str:arr4){25 sum=sum+str;2627 }28 System.out.println("总数为"+sum);293031 age=(double)sum/arr4.length;32 System.out.println("平均数"+age);333435//复制36final int arr5[]=arr4.clone();37 System.out.println("数组的复制"+Arrays.toString(arr5));38//反转39for(int i=0;i<arr4.length/2;i++){40final int temp=arr4[i];41 arr4[i]=arr4[arr4.length-1-i];42 arr4[arr4.length-1-i]=temp;43 }4445 System.out.println("反转后的数组"+Arrays.toString(arr4));将成绩优异的前10名学⽣成绩按从⼩到⼤顺序输出,前10名学⽣成绩如下:[88,87,94,95,86,89,91,99,90,85] ,并打印成绩总和以及平均成绩。

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

一填空题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 程序执行的入口点。

关于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[])19.如定义对象StringBuffer ch = new StringBuffer("Shanghai") 则ch.length()=( )A. 7 B.8 C.9 D.2320.执行完代码"int[] x=new int[25];"后以下( )说明正确的A. x[24]为0B. x[24]未定义C. x[25]为0D. x[0]为空21.关于char类型的数组,说法正确的是A. 其数组的默认值是'A'B. 可以仅通过数组名来访问数组C. 数组不能转换为字符串D. 可以存储整型数值22.对于数组a[10],下列表示错误的是A. a[0]B. a(0)C. a[9]D. a[1]23.下列数组声明,下列表示错误的是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};13. Java中数组的元素可以是简单数据类型的量,也可以是某一类的对象。

( )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.复制数组有哪些方法?7.数组创建后,其元素被赋予的默认值有哪些?8. 如何声明和创建一个二维数组?9.声明数组变量会为数组分配内存空间吗?为什么?10.一个二维数组的行可以有不同的长度吗?如果可以,试创建一个此类型的数组。

五、程序题1.有一个整数数组,其中存放着序列1,3,5,7,9,11,13,15,17,19。

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

2.编写一个程序,提示用户输入学生数量姓名和他们的成绩,并按照成绩的降序来打印学生的姓名。

3.编写一个程序,求出整数数组中最小元素的下标。

如果这样的元素个数大于1,则返回下标最小的数的下标。

4.现在有如下的一个数组:int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5} ;要求将以上数组中值为0的项去掉,将不为0的值存入一个新的数组,生成的新数组为:int newArr[]={1,3,4,5,6,6,5,4,7,6,7,5} ;5. 现在给出两个数组:·数组A:“1,7,9,11,13,15,17,19:;·数组b:“2,4,6,8,10”两个数组合并为数组c,按升序排列。

相关文档
最新文档