Java数组测习题(带答案)

合集下载

java模拟试题(带答案)

java模拟试题(带答案)

java模拟试题(带答案)判断题1.Java语言中的数组元素下标总是从0开始,下标可以是整数或整型表达式。

(√)2.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。

(某)3.所谓抽象类就是包含有抽象方法的类。

(某)4.Java系统的标准输入对象是Sytem.in,标准输出对象有两个,分别是标准输出Sytem.out和标准错误输出Sytem.err。

(√)5.如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。

(某)6.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。

(√)7.用“+”可以实现字符串的拼接,用-可以从一个字符串中去除一个字符子串。

(某)8.一个容器中可以混合使用多种布局策略。

(某)9.Java中,并非每个事件类都只对应一个事件。

(√)10.Java的源代码中定义几个类,编译结果就生成几个以.cla为后缀的字节码文件。

(√)11.JavaApplet是由独立的解释器程序来运行的。

(某)12.Java的字符类型采用的是ASCII编码。

(某)13.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。

(√)14.Sytem类不能实例化,即不能创建Sytem类的对象。

(某)15.用户自定义的图形界面元素也可以响应用户的动作,具有交互功能。

(√)填空题1java源程序编译命令是javac2java应用程序中有一个main()方法,它前面有三个修饰符是public,tatic,void3java语言数据类型可分为两大类,一类称为基本数据类型,另一类称为引用数据类型4在转向语句中,continue语句使得程序结束本次循环,回到循环的条件测试部分继续执行。

5设某为float型变量,y为double型变量,a为int型变量,已知某=2.5f,a=7,y=4.22则表达式某+a%3某(int)某%(int)y的值为4.5 6设某为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型,则表达式某+y某a/某+b/y+c的值为double 类型7设有数组定义:intMyIntArray[]={10,20,30,40,50,60,70};则执行以下几个语句后的输出结果是120int=0;for(inti=0;i<MyIntArray.length;i++)if(i%2==1)+=MyIntArray[i] ;Sytem.out.println()选择题1.在浏览器中执行applet程序,以下选项中的哪个方法将被最后执行(C)。

基础Java数组练习题及答案

基础Java数组练习题及答案

在开发的时候主方法之中的代码越少越好。

1、将一个给定的整型数组转置输出,
例如:源数组,1 2 3 4 5 6
转置之后的数组,6 5 4 3 2 1
2、现在有如下的一个数组:
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} ;
思路:生活中的问题解决 = 程序中的解决;
1、确定出不为0的个数,这样可以开辟新数组;
2、从旧的数组之中,取出内容,并将其赋给新开辟的数组;
3、现在给出两个数组:
·数组A:“1,7,9,11,13,15,17,19:;·数组b:“2,4,6,8,10”
两个数组合并为数组c,按升序排列。

主要的目的是熟悉这两个操作的方法,数组扩大,必须要将原始数组的内容拷贝进去。

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. floatb[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 *=30;int[] numbers=new int[*];*=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考试编程题库及答案1. 基础语法题- 题目:编写一个Java程序,实现两个整数的加法运算,并打印结果。

- 答案:```javapublic class Addition {public static void main(String[] args) {int num1 = 5;int num2 = 10;int sum = num1 + num2;System.out.println("The sum is: " + sum);}}```2. 控制结构题- 题目:编写一个Java程序,判断一个整数是否为素数,并打印结果。

- 答案:```javapublic class PrimeCheck {public static void main(String[] args) {int number = 29;if (isPrime(number)) {System.out.println(number + " is a primenumber.");} else {System.out.println(number + " is not a prime number.");}}public static boolean isPrime(int n) {if (n <= 1) return false;for (int i = 2; i <= Math.sqrt(n); i++) {if (n % i == 0) return false;}return true;}}```3. 数组与循环题- 题目:编写一个Java程序,打印数组中所有元素的平方。

- 答案:```javapublic class SquareElements {public static void main(String[] args) {int[] numbers = {1, 2, 3, 4, 5};for (int i = 0; i < numbers.length; i++) {int square = numbers[i] * numbers[i];System.out.println("Square of " + numbers[i] + " is " + square);}}}4. 面向对象题- 题目:定义一个名为`Car`的类,包含属性`color`和`speed`,以及一个方法`increaseSpeed(int increment)`来增加速度。

JAVA测试题和答案

JAVA测试题和答案

B. Java 只支持单重继承,一个类可以实现多个接口;
C. Java 只支持单重继承,一个类只可以实现一个接口;
D. Java 支持多重继承,但一个类只可以实现一个接口。
8. 关于接口的定义和实现,以下描述正确的是:
(A)
A. 接口定义中的方法都只有定义没有实现
B. 接口定义中的变量都必须写明 final 和 static
C. 如果一个接口由多个类来实现,则这些类在实现该接口中的方法时应采用统
一的代码
D. 如果一个类实现一个接口,则必须实现该接口中的所有方法,但方法未必声
明为 public.
9. 在 Java 的异常处理语句 try-catch-final 中,以下描述正确的
是:
(B)
A. try 后面是可能产生异常的代码,catch 后面是捕获到某种异常对象时进行
为哪一种不属于浏览器禁止的行为。(A)
A. 禁止访问 Applet 程序所在服务器的资源
B. 禁止读写本地计算机的文件系统
C. 禁止运行本地计算机的可执行程序
D. 禁止访问与本地计算机有关的信息,如用户名、邮件地址等
15 下列关于继承的说法哪个是正确的?B
A.子类只继承父类 public 方法和属性; B.子类继承父类的非私有属性和方法; C.子类只继承父类的方法,而不继承父类的属性;’ D.子类将继承父类的所有的属性和方法。 16 下面哪个是 JAVA 的保留字? B run import implement string 17.下列关于抽象类的说法四个是正确的?C A.某个抽象类的父类是抽象类,则达个子类必须里载父类的所有抽象 方法; B.接口和抽象类是同一回事; C.绝对不能用抽象类去创建对象; D.抽象类中不可以有非抽象方法。 18.下列说法哪个是正确的? B A.创建对象 y 一定要用 new ; B.属性可以是简单变量,也可以是一个对象; C.属性必须是简单变量; D.对象中必有属性和方法。

java 关于循环和数组的选择题

java 关于循环和数组的选择题

一、关于循环的选择题1. 下面哪种循环不是Java语言中的循环结构?A. for循环B. if-else循环C. while循环D. do-while循环2. 在Java语言中,以下哪种循环可以在不知道具体循环次数的情况下使用?A. for循环B. if-else循环C. while循环D. do-while循环3. 在Java语言中,以下哪种循环至少会被执行一次?A. for循环B. if-else循环C. while循环D. do-while循环4. 下列哪个语句是正确的?A. for (int i=0; i<10; i++){}B. for (int i=0; i<10; i++){}C. for (i=0; i<10; i++){}D. for (int i=0; i<10, i++){}5. 在Java语言中,以下哪种循环会先执行循环体再判断条件?A. for循环B. if-else循环C. while循环D. do-while循环二、关于数组的选择题1. 在Java语言中,以下哪种声明是正确的数组声明方式?A. int arr[5];B. int[] arr = new int[5];C. arr[5] = new int[];D. int arr[];2. 如何获取数组arr的长度?A. arr.lenB. arr.sizeC. arr.lengthD. arr.count3. 在Java语言中,下列哪种方式是正确的数组初始化方式?A. arr = {1, 2, 3, 4, 5}B. arr = new int[5]{1, 2, 3, 4, 5}C. arr = (1, 2, 3, 4, 5)D. arr = new int[]{1, 2, 3, 4, 5}4. 在Java语言中,以下哪种方式能够遍历数组arr中的元素?A. for (int i=0; i<arr.length; i++){}B. for (int i=0; i<arr.size; i++){}C. for (int i=0; i<arr.count; i++){}D. for (int i=0; i<=arr.length; i++){}5. 在Java语言中,以下哪种操作可以将数组arr中的元素倒序排列?A. Arrays.sort(arr, Collections.reverseOrder());B. Arrays.sort(arr);C. Collections.reverse(Arrays.asList(arr));D. Collections.sort(arr, Collections.reverseOrder());以上就是关于Java语言中循环和数组的一些选择题,请读者认真思考后选择正确的答案。

JAVA类与对象及数组习题及答案

JAVA类与对象及数组习题及答案

V JA VA A 类和对象及数组习题类和对象及数组习题一、选择题一、选择题(1)下列构造方法的调用方式中,正确的是()下列构造方法的调用方式中,正确的是(D )--原因:在通过new 实例化一个类对象时系统会自动调用该类相应的构造方法。

A .按照一般方法调用.按照一般方法调用B .由用户直接调用.由用户直接调用C .只能通过new 自动调用自动调用D .被系统调用.被系统调用(2)在Java 中,能实现多重继承效果的方式是(中,能实现多重继承效果的方式是(C )--原因:一个类可以同时实现多个接口。

Java 接口反映了对象较高层次的抽象,还弥补了Java 只支持单继承的不足,可用它来完成多继承的一些功能。

A .内部类.内部类B .适配器.适配器C .接口.接口D .同步.同步(3)int 型public 成员变量MAX_LENGTH ,该值保持为常数100,则定义这个变量的语句是( D )—原因:java 中定义常量用关键字final 来定义。

A .public int MAX_LENGTH=100B .final int MAX_LENGTH=100C .public const int MAX_LENGTH=100D .public final int MAX_LENGTH=100 (4)下列叙述中,正确的是(A )—原因:Java 严格区分大小写,所以变量number 与Number 不相同;Java 中的注释方式除了“//”行注释之外还有段注释“/*-------*/”和文档注释/**-------*/。

Java 源文件中的public 类只能有一个。

A. 声明变量时必须指定一个类型B. Java 认为变量number 与Number 相同相同C. Java 中唯一的注释方式是"//"D. 源文件中public 类可以有0或多个或多个(5)下列叙述中,错误的是( D)—原因:子类继承父类,并且可以有自己的成员变量和成员方法。

java模拟试题(带答案)

java模拟试题(带答案)

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

(√)2.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。

(×)3.所谓抽象类就是包含有抽象方法的类。

(×)4.Java系统的标准输入对象是System.in,标准输出对象有两个,分别是标准输出System.out和标准错误输出System.err。

(√)5.如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p是正确的。

(×)6.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。

(√)7.用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。

(×)8.一个容器中可以混合使用多种布局策略。

(×)9.Java中,并非每个事件类都只对应一个事件。

(√)10.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。

(√)11.Java Applet是由独立的解释器程序来运行的。

(×)12.Java的字符类型采用的是ASCII编码。

(×)13.Java的各种数据类型占用固定长度,与具体的软硬件平台环境无关。

(√)14.System类不能实例化,即不能创建System类的对象。

(×)15.用户自定义的图形界面元素也可以响应用户的动作,具有交互功能。

(√)填空题1 java 源程序编译命令是 javac2 java 应用程序中有一个main()方法,它前面有三个修饰符是 public , static , void3 java语言数据类型可分为两大类,一类称为基本数据类型 ,另一类称为引用数据类型4 在转向语句中, continue 语句使得程序结束本次循环,回到循环的条件测试部分继续执行。

5设x为float型变量, y为 double型变量, a为 int型变量,已知 x=2.5f,a=7 ,y=4.22 则表达式x+a%3*(int)x%(int)y的值为 4.56设x为float型变量, y为 double型变量, a为 int型变量,b 为long 型变量,c为char 型,则表达式x+y*a/x+b/y+c 的值为 double 类型7设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 120 。

数组选择试题及答案解析

数组选择试题及答案解析

数组选择试题及答案解析一、选择题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试题及答案(50道选择题)

JAVA试题及答案(50道选择题)

JA V A语言基础内部测试题选择题(针对以下题目,请选择最符合题目要求的答案,针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。

)(每题2分)没有注明选择几项的,只选择一项1、JA V A所定义的版本中不包括:()A、JA V A2 EEB、J A V A2 CardC、J A V A2 MED、JA V A2 HEE、JA V A2 SE2、下列说法正确的是()A、JA V A程序的main方法必须写在类里面B、J A V A程序中可以有多个main方法C、J A V A程序中类名必须与文件名一样D、JA V A程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来3、Java中,在如下所示的Test类中,共有()个构造方法。

public class Test{private int x;public Test(){x=35;}public void Test(double f){This.x=(int)f;}public Test(String s){}}A、0B、1C、2D、34、变量命名规范说法正确的是()A、变量由字母、下划线、数字、$符号随意组成;B、变量不能以数字作为开头;C、A和a在java中是同一个变量;D、不同类型的变量,可以起相同的名字;5、下列javaDoc注释正确的是()A、/*我爱北京天安门*/B、//我爱北京天安门*/C、/**我爱北京天安门*/D、/*我爱北京天安门**/6、为一个boolean类型变量赋值时,可以使用( )方式A、boolean = 1;B、b oolean a = (9 >= 10);C、b oolean a="真";D、boolean a = = false;7、以下( )不是合法的标识符A、STRINGB、x3x;C、v oidD、de$f8、表达式(11+3*8)/4%3的值是( )A、31B、0C、1D、29、()表达式不可以作为循环条件A、i++;B、i>5;C、b Equal = str.equals("q");D、count = = i;10、运算符优先级别排序正确的是()A、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;11、以下程序的运行结果是:( )public class Increment{public static void main(String args[]) {int a;a = 6;System.out.print(a);System.out.print(a++);System.out.print(a);}}。

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基础测试题及答案

一、选择题(每题2分,共40分)1、下面哪个是Java语言中正确的标识符( C )A、3comB、importC、thatD、this2、下面哪个语句(初始化数组)是不正确的:(B)A.int x[] = {1,2,3}; B.int x[3] = {1,2,3};C.int[] x = {1,2,3}; D.int x[] = new int[]{1,2,3};3、下述概念中不属于面向对象方法的是( D )。

A.对象、消息 B.继承、多态C.类、封装 D.过程调用4、下面的代码段中,执行之后i 和j 的值是什么? ( B )int i = 1;int j;j = i++*2+3*--i;A.1, 2 B.1, 5 C.2, 1 D.2, 25、下面哪条语句把方法声明为抽象的公共方法?(B )A.public abstract method();B.public abstract void method();C.public abstract void method(){}D.public void method() extends abstract;6、下面关于java中类的说法哪个是不正确的?( C )A.类体中只能有变量定义和成员方法的定义,不能有其他语句。

B.构造函数是类中的特殊方法。

C.类一定要声明为public的,才可以执行。

D.一个java文件中可以有多个class定义。

7、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C )class A{ int i;static String s;void method1() { }static void method2() { }}A、System.out.println(a.i);B、a.method1();C、A.method1();D、A.method2()8、容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变? ( B )A、CardLayoutB、FlowLayoutC、BorderLayoutD、GridLayout9、下列哪个用户图形界面组件在软件安装程序中是常见的? ( C )A.滑块B.进度条C.按钮D.标签10、在Java 中如果要在字符串类型对象s=“JA V A”,中找出‘V’出现的位置可使用下面哪个方法:(B)A.mid(2,s); B.charAt(2); C.s.indexOf(‘V’);D.indexOf(s,’V’);11、Java中哪个类提供了随机访问文件的功能。

(完整版)java练习题(含答案)

(完整版)java练习题(含答案)

1.编写程序,用数组实现乘法小九九的存储和输出。

【提示:采用多个一维数组。

】public class Multipation {public static void main(String[] args) {// TODO Auto-generated method stubint x[][]=new int[9][9];for(int i=0;i<9;i++){for(int j=0;j<9;j++){if(i>=j){int m=i+1;int n=j+1;x[i][j]=m*n;System.out.print(m+"*"+n+"="+x[i][j]);}}System.out.println();}}}2. 定义一个类Student,属性为学号、姓名和成绩;方法为增加记录SetRecord和得到记录GetRecord。

SetRecord给出学号、姓名和成绩的赋值,GetRecord通过学号得到考生的成绩。

public class Student {/***@param args*/private int ID;private String name;private float score;public void SetRecord(int ID,String name,float score){this.ID=ID;=name;this.score=score;}public float getRecord(int ID){if(ID==this.ID)return this.score;elsereturn -1;}public static void main(String[] args) {// TODO Auto-generated method stubStudent s=new Student();s.SetRecord(0,"alex",100);float Sco=s.getRecord(0);System.out.print(Sco);}}3.给出上题中设计类的构造函数,要求初始化一条记录(学号、姓名、成绩)。

Java练习题库(含答案及解析)100题

Java练习题库(含答案及解析)100题

Java练习题库(含答案)一、Java语法基础(1-18)1、在Java中,负责对字节码解释执行的是()。

答案:BA、垃圾回收器B、虚拟机C、编译器D、多线程机制2、下列描述中,正确的是()答案:AA、Java程序的main方法必须写在类里面。

B、Java程序中可以有多个main方法。

C、Java程序中类名必须与文件名一样。

(public修饰的才有这要求)D、Java程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来。

3、下列描述中,正确的是()答案:AA、Java中的标识符是区分大小写的B、源文件名与public类名可以不相同C、Java源文件扩展名为.jarD、Java源文件中public类的数目不限4、下列关于Java中变量命名规范的描述中,正确的是( ) 答案:BA、变量由字母、下划线、数字、$符号随意组成。

(数字不能开头)B、变量不能以数字开头。

C、A和a在java中是同一个变量。

D、不同类型的变量,可以起相同的名字。

5、以下选项中,不是Java合法标识符的是( ) 答案:CA、 VOIDB、 x3xC、 finalD、 abc$def6、在Java中定义一个类时,所使用的关键字是()。

答案:AA、classB、publicC、structD、class 或struct7、下列关于运算符优先级别排序正确的是()答案:AA、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;8、表达式(15+3*8)/4%3的值是( )答案:AA、 0B、 1C、 2D、 399、已知字符A对应的ASCII码值是65,那么表达式"A" + 1的值是()答案:CA.、66 B、B C、A1 D、非法表达式,编译出错10、下列关于boolean类型的叙述中,正确的是()答案:DA、可以将boolean类型的数值转换为int类型的数值B、可以将boolean类型的数值转换为字符串C、可以将boolean类型的数值转换为char类型的数值D、不能将boolean类型的数值转换为其他基本数据类型11、下面关于for循环的描述正确的是( ) 答案:AA、 for循环体语句中,可以包含多条语句,但要用大括号括起来。

JAVA试题及答案(50道选择题)

JAVA试题及答案(50道选择题)

JA V A语言基础内部测试题选择题(针对以下题目,请选择最符合题目要求的答案,针对每一道题目,所有答案都选对,则该题得分,所选答案错误或不能选出所有答案,则该题不得分。

)(每题2分)没有注明选择几项的,只选择一项1、JA V A所定义的版本中不包括:()A、JA V A2 EEB、J A V A2 CardC、J A V A2 MED、JA V A2 HEE、JA V A2 SE2、下列说法正确的是()A、JA V A程序的main方法必须写在类里面B、J A V A程序中可以有多个main方法C、J A V A程序中类名必须与文件名一样D、JA V A程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来3、Java中,在如下所示的Test类中,共有()个构造方法。

public class Test{private int x;public Test(){x=35;}public void Test(double f){This.x=(int)f;}public Test(String s){}}A、0B、1C、2D、34、变量命名规范说法正确的是()A、变量由字母、下划线、数字、$符号随意组成;B、变量不能以数字作为开头;C、A和a在java中是同一个变量;D、不同类型的变量,可以起相同的名字;5、下列javaDoc注释正确的是()A、/*我爱北京天安门*/B、//我爱北京天安门*/C、/**我爱北京天安门*/D、/*我爱北京天安门**/6、为一个boolean类型变量赋值时,可以使用( )方式A、boolean = 1;B、b oolean a = (9 >= 10);C、b oolean a="真";D、boolean a = = false;7、以下( )不是合法的标识符A、STRINGB、x3x;C、v oidD、de$f8、表达式(11+3*8)/4%3的值是( )A、31B、0C、1D、29、()表达式不可以作为循环条件A、i++;B、i>5;C、b Equal = str.equals("q");D、count = = i;10、运算符优先级别排序正确的是()A、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;11、以下程序的运行结果是:( )public class Increment{public static void main(String args[]) {int a;a = 6;System.out.print(a);System.out.print(a++);System.out.print(a);}}A.666B.667C.677D.67612、下列值不为true的表达式有()。

JAVA练习题及答案

JAVA练习题及答案
private String name; private int age; public int step; Dog(String s,int a) {
name=s; age=a; step=0; } public void run(Dog fast) { fast.step++; } } public static void main (String args[]) { A a=new A(); Dog d=a.new Dog("Tom",3); d.step=25; d.run(d); System.out.println(d.step); } } 四、 编程题
4) while ( I > 0 ) { 5) j = I * 2; 6) System.out.println (" The value of j is " + j ); 7) k = k + 1; 8) I--; 9) } 10) } A line 4 B line 6 C line 7 D line 8 二、多项选择
D sleep() E.yield() F.synchronized(this) 7.构造 BufferedInputStream 的合适参数是哪个? CA A BufferedInputStream B BufferedOutputStream C FileInputStream D FileOuterStream E. File 8.下列说法正确的是 DBC A ng.Clonable 是类 B ng.Runnable 是接口 C Double 对象在 ng 包中 D Double a=1.0 是正确的 java 语句 9.指出正确的表达式 AB A double a=1.0; B Double a=new Double(1.0); C byte a = 340; D Byte a = 120; 10.定义一个类名为"MyClass.java"的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为: CD A private class MyClass extends Object B class MyClass extends Object C public class MyClass D public class MyClass extends Object 11.指出下列哪个方法与方法 public void add(int a){}为合理的重载方法。 CD A public int add(int a) B public void add(long a) C public void add(int a,int b) D public void add(float a) 12.如果下列的方法能够正常运行,在控制台上将显示什么? ACD public void example(){

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数组习题及答案

三、/*现在有如下一个数组:*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};*/public class Test4_3{public static void main(String[] args){int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};int n=0;for(int i=0;i<oldArr.length;i++){if(oldArr[i]!=0){n++;}}int newArr[]=new int[n];n=0;for(int i=0;i<oldArr.length;i++){if(oldArr[i]!=0){newArr[n]=oldArr[i];n++;}}for(int i=0;i<newArr.length;i++){System.out.print(newArr[i]+"/t");}}}四、//定义一个整型数组,保存10个数据,利用程序完成将最大值保存在数组中第一个元素,依次递减。

public class Test4_4{public static void main(String[] args){int arr[]={78,64,35,92,48,98,87,94,80,83};rankArr(arr);}public static void rankArr(int temp[]){for(int i=1;i<temp.length;i++){System.out.print("第"+i+"次排序时:");for(int j=0;j<temp.length;j++){if(temp[j]<temp[i]){int x=temp[j];temp[j]=temp[i];temp[i]=x;}}for(int e=0;e<temp.length;e++){System.out.print(temp[e]+"、");}System.out.println();}}}每次交换数据后,都输出了所有数组元素,可以观察到元素间的数据交换。

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数组习题及答案·优选.

三、/*现在有如下一个数组:*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};*/public class Test4_3{public static void main(String[] args){int oldArr[]={1,3,4,5,0,0,6,6,0,5,4,7,6,7,0,5};int n=0;for(int i=0;i<oldArr.length;i++){if(oldArr[i]!=0){n++;}}int newArr[]=new int[n];n=0;for(int i=0;i<oldArr.length;i++){if(oldArr[i]!=0){newArr[n]=oldArr[i];n++;}}for(int i=0;i<newArr.length;i++){System.out.print(newArr[i]+"/t");}}}四、//定义一个整型数组,保存10个数据,利用程序完成将最大值保存在数组中第一个元素,依次递减。

public class Test4_4{public static void main(String[] args){int arr[]={78,64,35,92,48,98,87,94,80,83};rankArr(arr);}public static void rankArr(int temp[]){for(int i=1;i<temp.length;i++){System.out.print("第"+i+"次排序时:");for(int j=0;j<temp.length;j++){if(temp[j]<temp[i]){int x=temp[j];temp[j]=temp[i];temp[i]=x;}}for(int e=0;e<temp.length;e++){System.out.print(temp[e]+"、");}System.out.println();}}}每次交换数据后,都输出了所有数组元素,可以观察到元素间的数据交换。

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

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

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

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

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

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

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

7)8)9)10)11)12)1.2.3.4.5.6.7.8.A.9.10.11.A12.C.charstr[5]={"hi"}; D.charstr[100]="";13.数组在Java中储存在C中14.A.栈 B.队列 C.堆 D.链表15.下面程序的运行结果是____main(){inta[][]={{1,2,3},{4,5,6}};}A.3B.4C.5D.616.下面程序的运行结果是_C___17.m ain(){intx=30;int[]numbers=newint[x];x=60;(numbers.length);}A.60B.20C.30D.5018.19.m20.c21.i22.w23.24.A25.C26.A.C.用27.28.A.29.30.A.char--'"u0000'B.Boolean--trueC.float--0.0fD.int--031.关于数组作为方法的参数时,向方法传递的是AA.数组的引用B.数组的栈地址C.数组自身D.数组的元素32.关于数组复制,下列说法错误的是ACA."="可以实现数组复制B.运用循环语句进行数组复制必须两个数组长度相同C.arraycopy()方法没有给目标数组分配内存空间D.数组复制是数组引用的传递33.下列语句会造成数组newint[10]越界是DA.a[0]+=9;B.a[9]=10;C.—a[9]D.for(inti=0;i<=10;i++)a[i]++;34.在JDK环境下编译JAVA源程序使用的命令是(B)A.javaB.javacC.jvmD.tomcatD.子类不能使用父类的构造方法35.m ain方法是java??Application??程序执行的入口点。

关于main方法放入方法以下合法的是()A.??public??static??void??main();B.??public??static??void??main(String[]args)36.37.A.38.A.C.39.40.1.2.3.4.5.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.下面这条语句正确吗?()intt[3][2]={{1,2},{3,4},{5,6}};16.数组声明后其大小固定。

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

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

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

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

()四、简答题1.2.3.示?4.5.6.8.1.1)2)3)4)5)6)7)8)9)10)11)12)13)}2.编写一个程序,提示用户输入学生数量姓名和他们的成绩,并按照成绩的降序来打印学生的姓名。

1)publicclassexercise16{2)publicstaticvoidmain(String[]args){3)StringnumberString=4)JOptionPane.showInputDialog("Enterthenumberofstudents");5)intnumberOfStudents=Integer.parseInt(numberString);6)String[]names=newString[numberOfStudents];7)double[]scores=newdouble[numberOfStudents];8)for(inti=0;i<scores.length;i++){9)names[i]=JOptionPane.showInputDialog("Enterastudentname");10)scores[i]=Double.parseDouble(11)JOptionPane.showInputDialog("Enterastudentscore"));12)}13)for(inti=scores.length-1;i>=1;i--){14)doublecurrentMax=scores[0];15)intcurrentMaxIndex=0;16)for(intj=1;j<=i;j++){17)if(currentMax<scores[j]){18)currentMax=scores[j];19)20)}21)}22)23)24)25)26)27)28)}29)}30)31)}32)}33)}3.101)2)3)4)5)6)7)8).showInputDialog("Enteranumber:");9)intnumber=Integer.parseInt(numberString);10)if(isNotHave(arrayInt,number)){11)arrayInt[i]=number;12)i++;13)j++;14)}15)else16){17)do{18)numberString=JOptionPane19).showInputDialog("Thisnumberisexit,enteraanothernumber:");20)number=Integer.parseInt(numberString);21)}while(!isNotHave(arrayInt,number));22)arrayInt[i]=number;23)i++;24)j++;25)}26)}while(i<arrayInt.length);27)Stringoutput="";28)for(intk:arrayInt){29)30)31)32)33)34)35)36)37)38)39)40)41)}4.1)2)3)4)5)6)7)8)9)10)intmid=0;11)while(high>low){ mid=(mid==(low+high)/2)?12)(mid+1):((low+high)/2);13)if(key<list[mid])14)high=mid-1;15)elseif(key==list[mid])16)returnmid;17)else18)low=mid-1;19)}20)return-low-1;21)}22)}5.编写一个程序,读入数目确定的考试分数,并且判断有多少个分数高于或等于平均分,有多少个分数低于平均分。

输入一个负数标志输入结束,假设最高分为100。

1)publicclassTest{2)publicstaticvoidmain(String[]args){3)double[]scores=newdouble[100];4)doublesum=0;5)intcount=0;6)7)8)9)10)11)12)13)14)15)16)17)18)19)20)21)22)23)}24)}6.1)2)3)4)5)6)for(inti=0;i<100;i++)7){8)numbers[i]=(int)(Math.random()*10);9)counts[numbers[i]]++;10)}11)for(inti=1;i<=numbers.length;i++)12){13)if(i%10!=0)14)else15)}16)for(inti=1;i<=counts.length;i++)17)}18)}7.求平均值和方差。

利用mean(int[]numbers)求平均值,利用deviation(int[]numbers)求标准差。

1)publicclassMeanDeviation{2)publicstaticvoidmain(String[]args){3)Scannerin=newScanner(System.in);4)intn=in.nextInt();5)int[]array=newint[n];6)7)8)9)10)11)12)13)14)15)16)17)18)19)20)21)22)23)24)25)26)27)28)29)30)}8.编写一个程序,求出整数数组中最小元素的下标。

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

1)publicclassMinIndex{2)publicstaticvoidmain(String[]args){3)int[]list={1,2,4,5,10,100,2,-22};4)}5)publicstaticintminIndex(int[]list){6)intmin=list[0];7)intminIndex=0;8)for(inti=1;i<list.length;i++)9)if(min>list[i]){10)min=list[i];11)minIndex=i;12)}13)returnminIndex;14)}15)。

相关文档
最新文档