CoreJava第二次内测有答案
- 格式:doc
- 大小:55.50 KB
- 文档页数:8
java二级考试试题及答案Java是一门广泛应用于软件开发领域的编程语言。
对于想要进一步提升自己的Java编程能力的人来说,参加Java二级考试是一个很好的机会。
本文将介绍一些常见的Java二级考试试题及其答案,希望对准备参加这个考试的人有所帮助。
1. 试题一:什么是Java中的多态性?请举一个示例说明。
答案:Java中的多态性是指同一个方法可以根据不同的对象调用不同的实现。
通过继承和接口的方式,一个父类或接口可以有多个不同的子类实现。
例如,有一个父类Animal,有两个子类Dog和Cat,它们都重写了父类的eat()方法。
当我们调用eat()方法时,可以根据具体的对象类型调用对应的实现,即可以调用Dog的eat()方法或Cat的eat()方法。
2. 试题二:Java中的异常处理机制是什么?请举一个示例说明。
答案:Java中的异常处理机制是通过try-catch-finally语句块来实现的。
当可能发生异常的代码块被包含在try块中时,如果发生异常,程序会跳转到对应的catch块进行异常处理。
finally块中的代码无论是否发生异常都会被执行。
例如,当我们读取一个文件时,可能会发生文件不存在的异常。
我们可以在try块中打开文件,如果发生异常,则在catch块中进行异常处理,最后在finally块中关闭文件。
3. 试题三:什么是Java中的线程?请举一个示例说明如何创建和启动一个线程。
答案:Java中的线程是指程序中独立执行的一段代码。
通过创建线程,我们可以同时执行多个任务,提高程序的效率。
可以通过继承Thread类或实现Runnable接口来创建线程。
例如,我们可以创建一个继承Thread类的MyThread类,重写run()方法,在run()方法中定义线程要执行的任务。
然后,我们可以通过创建MyThread对象并调用start()方法来启动线程。
4. 试题四:Java中的集合框架有哪些?请列举并简要说明各个集合类的特点。
java二级试题及答案一、选择题1.下列哪个选项用于创建一个类的实例?A. newB. thisC. finalD. void2.以下哪个关键字用于定义一个类的方法可以被子类重写?A. publicB. finalC. staticD. abstract3.以下哪个关键字用于定义一个类的成员变量可以被子类直接访问?A. privateB. protectedC. staticD. transient4.下列哪个选项是Java的基本数据类型?A. StringB. IntegerC. BooleanD. Double5.以下哪个选项是Java中的循环结构?A. forB. ifC. switchD. try二、填空题1. 声明一个整型变量并将其初始化为10:int num = _________ ;2. 定义一个常量并赋值为3.14:final double PI = _________ ;3. 定义一个字符串变量,并将其初始化为空串:String str =_________ ;4. 声明一个布尔变量并将其初始化为真:boolean flag = _________ ;5. 将两个整数相加并将结果赋值给一个整型变量:int sum =_________ + _________ ;三、编程题1. 编写一个Java程序,实现输入一个整数n,并输出1到n之间所有偶数的和。
示例输入:10示例输出:302. 编写一个Java程序,实现输入一个字符串,判断该字符串是否是回文串(正序和反序读都一样)。
示例输入:radar示例输出:是回文串3. 编写一个Java程序,实现输入一个整数n,并输出斐波那契数列的前n项。
示例输入:5示例输出:0 1 1 2 3四、简答题1. 什么是Java的面向对象特性?举例说明面向对象编程的好处。
2. Java中的继承和多态的概念分别是什么?它们如何实现面向对象的特性?3. Java中的异常处理机制是什么?说明try-catch-finally语句的作用和使用方法。
一. Java基础部分面试题1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制?答:可以包括但公共类只能有一个、且与源文件名相同2、Java有没有goto?答:有、但是是作为保留字存在的。
3、说说&和&&的区别。
答:在java中,这两个符号都属于逻辑运算符与的操作。
但&&表示的是短路运算,所谓的短路运算是,与运算中,两边的表达式的布尔值,如果有一个为假,另外一个就不需要进行判断了。
最为常见的地方是,if(o!=null&&o.equals(s)) 如果第一个为false 那么不会对第二个式子判断,但如果是非短路运算符& 会对第二个判断,但此时o为空,会抛出NullPointerExcetption异常而&还有取地址的作用常用来对一个整数的后四bit位计算(常和ox0f进行运算)。
4、在JAVA中如何跳出当前的多重嵌套循环?答:关键字常见的有return、ok标号和break。
用法上:ok是使用带有ok标号的break 语句我最常用的不是这一种,而是return和让外层的循环条件表达式的结果可以受到内层循环代码的控制。
5、switch语句能否作用在byte上,能否作用在long上,能否作用在String上?答:可以作用在byte、short、int、char(及以上四种的包装类)7.0之后支持String 和枚举.可以理解为 expression值只能是整型表达式和枚举常量6、short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?答:错误在于s1+1是一个短整型和一个1相加 1作为字面值是byte、short、int通用的,但在进行刚才的加法运算时,会被认为是一个整型。
整型和短整型相加会出现自动类型提升。
将提升后的整型值赋值给一个短整型会报错而直接给short赋值一个1不会被认为是整型,只有在加法运算时会。
java二级考试真题题库及答案1. Java中,以下哪个关键字用于声明一个类?A. publicB. staticC. finalD. class答案:D2. 在Java中,哪个方法用于获取字符串的长度?A. length()B. size()C. getLength()D. length答案:A3. Java中的集合框架主要包含哪些接口?A. List, Set, MapB. List, Queue, StackC. List, Set, QueueD. Set, Map, Stack答案:A4. 在Java中,以下哪个关键字用于实现多态?A. abstractB. finalC. overrideD. implements答案:C5. Java中的垃圾回收机制主要负责什么?A. 内存分配B. 内存回收C. 线程管理D. 异常处理答案:B6. 在Java中,以下哪个关键字用于声明一个接口?A. classB. interfaceC. abstractD. final答案:B7. Java中,以下哪个关键字用于声明一个方法为同步方法?A. synchronizedB. volatileC. transientD. strictfp答案:A8. 在Java中,以下哪个类是所有Java类的根类?A. ObjectB. ClassC. StringD. System答案:A9. Java中,以下哪个关键字用于声明一个方法为静态方法?A. staticB. finalC. abstractD. synchronized答案:A10. 在Java中,以下哪个关键字用于声明一个变量为常量?A. finalB. staticC. constD. volatile答案:A11. Java中,以下哪个关键字用于声明一个类为抽象类?A. abstractB. finalC. interfaceD. class答案:A12. 在Java中,以下哪个关键字用于声明一个方法为重载方法?A. overloadB. overrideC. overloadsD. overloading答案:D13. Java中,以下哪个关键字用于声明一个类为最终类?A. finalB. abstractC. staticD. class答案:A14. 在Java中,以下哪个关键字用于声明一个方法为私有方法?A. privateB. publicC. protectedD. default答案:A15. Java中,以下哪个关键字用于声明一个变量为线程安全的?A. synchronizedB. volatileC. transientD. static答案:B16. 在Java中,以下哪个关键字用于声明一个类为序列化类?A. serializableB. serializeC. serializedD. serialization答案:A17. Java中,以下哪个关键字用于声明一个方法为覆盖方法?A. overrideB. extendsC. implementsD. extends答案:A18. 在Java中,以下哪个关键字用于声明一个变量为线程不安全的?A. volatileB. transientC. staticD. synchronized答案:B19. Java中,以下哪个关键字用于声明一个方法为保护方法?A. protectedB. publicC. privateD. default答案:A20. 在Java中,以下哪个关键字用于声明一个类为内部类?A. innerB. nestedC. internalD. static答案:B。
corejava_new 试题以下是未添加到数据库中的考题:以下是已添加到数据库中的考题:窗体顶端1. 下面哪些是short型的取值范围[C]A. -27 -- 27-1B. 0 – 216-1C. 215 – 215-1D. 231 – 231-12. 下面哪些是合法的标识符[ABE]A. $personsB. TwoUsersC. *pointD. thisE. _endline3. 哪些是将一个十六进制值赋值给一个long型变量[D]A. long number = 345L;B. long number = 0345;C. long number = 0345L;D. long number = 0x345L4. 下面的哪些程序片断可能导致错误。
[BD]A. String s = "Gone with the wind";String t = " good ";String k = s + t;B. String s = "Gone with the wind";String t;t = s[3] + "one";C. String s = "Gone with the wind";String standard = s.toUpperCase();D. String s = "home directory";String t = s - "directory";5. 在// point x处的哪些声明是合法的[DE]class Person {private int a;public int change(int m){ return m; }}public class Teacher extends Person {public int b;public static void main(String arg[]){Person p = new Person();Teacher t = new Teacher();int i;// point x}}A. i = m;B. i = b;C. i = p.a;D. i = p.change(30);E. i = t.b;6. 当Frame的大小被改变时, Frame中的按钮的位置也可能被改变,请问此时使用的是什么布局管理器[B]A. BorderLayoutB. FlowLayoutC. CardLayoutD. GridLayout7. 给出下面的代码片断1) public void create() {2} Vector myVect;3} myVect = new Vector();4} }下面的哪些陈述是正确的? [ADE]A. 第二行的声明不会为变量myVect分配内存空间。
实验2 类编程练习2.1实验目的通过编程和上机实验理解Java 语言是如何体现面向对象编程基本思想,了解类的封装方法,以及如何创建类和对象,了解成员变量和成员方法的特性,掌握OOP 方式进行程序设计的方法,了解类的继承性和多态性的作用。
2.2实验要求1.编写一个体现面向对象思想的程序。
2.编写体现类的继承性的程序。
3.编写体现类的多态性的程序。
2.3实验内容2.3.1用户自定义类import java.util.*;public class EmployeeTest{public static void main(String[] args){// fill the staff array with three Employee objectsEmployee[] staff = new Employee[3];staff[0] = new Employee("Carl Cracker", 75000, 1987, 12, 15);staff[1] = new Employee("Harry Hacker", 50000, 1989, 10, 1);staff[2] = new Employee("Tony Tester", 40000, 1990, 3, 15);// raise everyone's salary by 5%for (int i=0;i<staff.length;i++){staff[i].raiseSalary(5);}// print out information about all Employee objectsfor (int i=0;i<staff.length;i++){System.out.println("name=" + staff[i].getName()+ ",salary=" + staff[i].getSalary()+ ",hireDay=" + staff[i].getHireDay());}}}class Employee{public Employee(String n, double s, int year, int month, int day){name = n;salary = s;GregorianCalendar calendar = new GregorianCalendar(year, month - 1, day); // GregorianCalendar uses 0 for JanuaryhireDay = calendar.getTime();}public String getName(){return name;}public double getSalary(){return salary;}public Date getHireDay(){return hireDay;}public void raiseSalary(double byPercent){double raise = salary * byPercent / 100;salary += raise;}private String name;private double salary;private Date hireDay;}2.3.2类的继承性class Employee {String name ;int salary;public Employee(String name,int salary){ = name;this.salary = salary;}public String getDetails( ){return "Name: "+name+"\nSalary: "+salary;}}class Manager extends Employee {private String department ;public Manager(String name,int salary,String department){super(name,salary);this.department = department;}public String getDetails( ){return "Name: "+name+"\nSalary: "+salary+"\nDepartment: "+ department;}}class Secretary extends Employee{public Secretary(String name,int salary){super(name,salary);}}public class TestOverriding{public static void main(String[] srgs){Manager m = new Manager("Tom",2000,"Finance");Secretary s = new Secretary("Mary",1500);System.out.println(m.getDetails());System.out.println(s.getDetails());}}2.3.2编程题1.(基本题)本题目要求实现的各个类,按照其继承的顺序,分别是:Circle类:用来描述圆的状态和行为;Ellipse类:描述椭圆的状态和行为,该类继承Circle类;Cylinder类:描述圆柱体,该类的属性bottom是Circle类对象;Test类:实例化以上各个类。
二级JAVA机试-65(总分:100.00,做题时间:90分钟)一、1.基本操作题(总题数:1,分数:33.00)1.System. out. println ( "团队测试不通过");(分数:33.00)__________________________________________________________________________________________ 正确答案:(import java.math.*;Math.random()*100(i==10)&&((sumfenshu/10)>=80))解析:[解析]本题主要考查while循环语句的用法。
解答本题的关键是熟练使用while循环语句。
在本题中,import java.math.*;是用来导入java.math这个数学计算包,Math.random()*100语句是用来产生100个随机数,if((i==10)&&((sumfenshu/10)>=80))语句的功能是用来判断团队的人数是否为10、平均分数是否大于等于80。
二、2.简单应用题(总题数:1,分数:33.00)2.c2.start();(分数:33.00)__________________________________________________________________________________________ 正确答案:(tmp=tmp+nbank.add(50,myflag17_2))解析:[解析]本题主要考查线程的同步和设计简单的类来模拟现实问题的简单应用。
解题关键是熟练掌握面向对象的编程思想,熟悉 Java线程的同步编程,会使用Math类的随机数方法。
本题中,第1个空,银行类对客户的存款进行累加;第2个空,在客户类中,通过使用银行类的对象bank调用add()方法实现3次汇款的操作,将钱数和客户标志作为参数传递给add()方法。
【石油大学】Java语言程序设计-第二次在线作业试卷总分:100 得分:100第1题,1.(2.5分)对象使用时,下面描述错误的是A、通过“.”运算符调用成员变量和方法B、通过成员变量的访问权限设定限制自身对这些变量方法的调用C、将一个对象申明为类的成员时,必须在使用前为其分配内存D、在方法中使用对象作为参数时,采用引用调用正确答案:B第2题,2.( 2.5分)给出如下代码:classTest{privateintm;publicstaticvoidfun(){//somecode...}}如何使成员变量m被函数fun()直接访问A、将private int m 改为protected int mB、将private int m 改为 public int mC、将private int m 改为 static int mD、将private int m 改为 int m正确答案:C第3题,3.(2.5分)下列哪些语句关于内存回收的说明是正确的A、程序员必须创建一个线程来释放内存B、内存回收程序负责释放无用内存C、内存回收程序允许程序员直接释放内存D、内存回收程序可以在指定的时间释放内存对象正确答案:B第4题,4.(2.5分)MAX_LENGTH是int型public成员变量,变量值保持为常量100,用简短语句定义这个变量A、public int MAX_LENGTH=100;B、final int MAX_LENGTH=100;C、final public int MAX_LENGTH=100;D、public final int MAX_LENGTH=100.正确答案:D第5题,5.(2.5分)为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为A、static void method( )B、public void method( )C、final void method( )D、abstract void method( )正确答案:A第6题,6.( 2.5分)给出下面代码段1)publicclassTest{2)intm,n;3)publicTest(){}4)publicTest(inta){m=a;}5)publicstati cvoidmain(Stringarg[]){6)Testt1,t2;7)intj,k;8)j=0;k=0;9)t1=newTest();10)t2=newTe st(j,k);11)}12)}哪行将引起一个编译时错误?A、line 3B、line 5C、line 6D、line 10正确答案:D第7题,7.(2.5分)函数重载是指A、两个或两个以上的函数取相同的函数名,但形参的个数或类型不同B、两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同C、两个以上的函数名字不同,但形参的个数或类型相同D、两个以上的函数取相同的函数名,并且函数的返回类型相同正确答案:A第8题,8.(2.5分)构造方法何时被调用A、类定义时B、创建对象时C、调用对象方法时D、使用对象的变量时正确答案:B第9题,9.(2.5分)Java中访问限定符不包括A、publicB、privateC、default(无修饰符)D、final正确答案:D第10题,10.(2.5分)定义一个类名为“MyClass.java”的类,并且该类可被一个工程中的所有类访问,那么该类的正确声明应为:A、private class MyClass extends ObjectB、class MyClass extends ObjectC、public class MyClassD、private class MyClass extends Object正确答案:C第11题,11.( 2.5分)对于下列代码:publicclassParent{publicintaddValue(inta,intb){ints;s=a+b;returns;}}classChildex tendsParent{}下述哪些方法可以加入类Child()A、int addValue( int a, int b ){// do something...}B、public void addValue (int a, int b ){// do something...}C、public int addValue( int a ){// do something...}D、public int addValue( int a, int b )throws MyException {//do something...}正确答案:C第12题,12.( 2.5分).对于下列代码:1)classPerson{2}publicvoidprintValue(inti,intj){//...}3}publicvoidprintValue(inti){//...}4}}5)publicclassTeacherextendsPerson{6}publicvoidprintValue(){//...}7}p ublicvoidprintValue(inti){//...}8}publicstaticvoidmain(Stringargs[]){9}Persont=n ewTeacher();10}t.printValue(10);11}}第10行语句将调用哪行语句?A、line 2B、line 3C、line 6D、line 7正确答案:D第13题,13.(2.5分)类Teacher和Student是类Person的子类;Personp;Teachert;Students;//p,tandsareallnon-null.if(tinstanceofPerson){s=(Stude nt)t;}最后一句语句的结果是:A、将构造一个Student对象;B、表达式是合法的;C、表达式是错误的;D、编译时正确,但运行时错误。
java 二级试题及答案Java二级试题及答案Java是一种广泛应用于软件开发领域的编程语言,掌握Java编程对于计算机专业人士来说尤为重要。
为了帮助读者更好地了解与掌握Java,本文将介绍一些常见的Java二级试题以及相应的详细答案。
第一节:基础知识题1. 什么是Java语言?它的特点是什么?Java语言是一种面向对象的程序设计语言,由Sun Microsystems公司于1995年推出。
它具有以下特点:- 简单易学:Java语法简洁明了,规范性强,相对于其他编程语言来说更容易上手。
- 面向对象:Java支持面向对象的编程风格,可以通过类和对象的概念来组织代码和数据。
- 平台无关性:Java应用程序可以在不同的操作系统上运行,因为Java程序是在Java虚拟机(JVM)上运行的。
- 安全性:Java提供了一些安全特性,如字节码验证和安全管理器,以确保程序在运行时的安全性。
- 高性能:Java通过Just-In-Time(JIT)编译器将字节码转换为本地机器码,从而提高了执行效率。
2. Java中如何实现多线程?请简要描述一下多线程同步的方法。
在Java中,可以通过继承Thread类或实现Runnable接口来创建多线程。
下面是一个使用Runnable接口的示例代码:```javapublic class MyThread implements Runnable {public void run() {// 线程执行的代码}public static void main(String[] args) {Thread thread = new Thread(new MyThread());thread.start();}}```多线程同步可以通过以下方法实现:- 使用synchronized关键字:可以用来修饰方法或代码块,确保同一时间只有一个线程可以访问被修饰的代码,从而避免竞态条件和数据不一致的问题。
Java第二次月考50题及解析1、【单选题】Calendar类中,用于为指定的日历字段增加或减去指定的时间量的方法是?()。
A.int get(int field)B.void add(int field,int amount)C.void set(int field,int value)D.void set(int year,int month,int date)【正确答案】B【答案解析】本题考查Calendar类中的方法void add(int field,int amount);方法为给定的时间分量的值加上给定的值,若给定的值为负数,则是减去给定的值。
2、【单选题】如果要按照特定顺序保存元素,应当使用的容器是()A.HashMapB.ArrayListC.TreeSetD.数组【正确答案】C【答案解析】本题考查TreeSet保存元素,会以特定的顺序保存元素选项C正确。
3、【单选题】如下变量的定义:String str1 = “haohao”;String str2 = “haohao”;以上代码中创建了()对象A.0B.1C.2D.3【正确答案】B【答案解析】Java为了提高性能,静态字符串(字面量、常量、常量连接)在常量池中创建,并尽量使用同一个对象,重用静态字符串。
对于重复出现的字符串直接量,JVM会首先在常量池中查找,如果存在即返回该对象。
本题中两个变量都指向内容相同的字符串,所以只有1个对象。
选项B正确。
4、【单选题】下列哪个方法可以使线程从运行状态进入阻塞状态()。
A.run()B.yield()C.sleep()D.start()【正确答案】C【答案解析】此题目考查的是线程状态的变化。
处于运行状态的线程,当执行sleep()方法时,会进入阻塞状态。
选项C正确5、【单选题】下列()方法用来定义线程要执行的任务。
A.start()B.run()C.sleep()D.wait()【正确答案】B【答案解析】此题目考查的是每个线程要执行的任务需要在run()方法中定义选项A 用于启动线程选项C用来休眠线程选项D让某个线程处于等待状态选项B正确。
1 / 8 《CoreJava第二次内测》 一、单选题(共30分,每题2分) 1. 定义一个只能接收整型数字的ArrayList,下面正确的是(c) A.ArrayList al=new ArrayList(); B.B.ArrayList al=new ArrayList(); C.ArrayList al=new ArrayList< Integer >(); D.ArrayList al=new ArrayList< int >(); 2. List接口的特点是哪项?( C ) A.不允许重复元素,元素有顺序 B.不允许重复元素,元素无顺序 c.允许重复元素,元素有顺序 D.允许重复元素,元素无顺序 3. 创建一个只能存放String的ArrayList的语句是哪项?( B ) A. ArrayList al=new ArrayList(); B. ArrayList al=new ArrayList(); C. ArrayList al=new ArrayList(); D. ArrayList al =new List(); 4. 现有 public class Demo{ public static void main (String[] args){ List al=new ArrayList(); a1.add("l"); a1.add("2"); a1.add("2"); a1.add("3"); System.out.println (al); } } 上述程序执行后的输出是哪项?( A ) A. [1,2,2,3] B. [1,2,3,3] C. [1,2,3] D. [2,1,3,2] 2 / 8
5. 实现了Set接口的类是哪项?( C ) A. ArrayList B. HashTable C. HashSet D. Collection
6. 现有: class AddStuff2 { public static void main(String [] args) { TreeSett=new TreeSet(); if (t.add("one")) if (t.add("two")) if (t.add ("three"))
t.add("four"); for (String s : t) System.out.print (s); } } 结果为:( C ) A. one three two B. one two three four C. four one three two D.编译失败 7. 为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 8. 在Java中,能实现多重继承效果的方式是( C )。 A.内部类 B.适配器 C.接口 D.同步 9. 关于下面程序片段,( B )的结论是正确的。 String a = "Java"; String b = "Java"; String x = "Ja"; String y = "va"; String c = x + y; A、a和b指向同一个实例对象,a和c指向同一个实例对象 3 / 8
B、a和b指向同一个实例对象,a和c不指向同一个实例对象 C、a和b不指向同一个实例对象,a和c指向同一个实例对象 D、a和b不指向同一个实例对象,a和c不指向同一个实例对象 10. 集合API 中Set接口的特点是哪项?( D ) A.不允许重复元素,元素有顺序 B.允许重复元素,元素无顺序 C.允许重复元素,元素有顺序 D.不允许重复元素,元素无顺序 11. 欲构造List接口类型的一个实例,此实例使用ArrayList类实现,下列哪个方法是正确的 ? ( B) A、 List myList=new Object(); B、 List myList=new ArrayList(); C、 ArrayList myList=new List(); D、 List myList=new List(); 12. 类java.util.HashMap实现了(C)接口。(选择一项) A) Collection B) Set C) Map D) List 13. 在Java中,关于HashMap类的描述,以下说法错误的是(B)。(选择一项) A) HashMap使用键/值的形式保存数据 B) HashMap能够保证其中元素的顺序 C) HashMap允许将null用作键 D) HashMap允许将null用作值 14. 表示键值对概念的接口是哪项?( D ) A. Set B. List C. Collection D. Map 15. java.util.Collections类属于:(A) A:无实例类; B:单实例类 C:有固定个数的实例类 D:枚举类 16. 下面哪个是对字符串String的正确定义 ( A ) A.String s1=null; B. String s4=(String) ‘\uface’; C.String s3=(String) ‘abc’ ; D. String s2=’null’ ; 17. 用迭代器遍历集合中的元素,判断集合中是否仍有元素可以迭代,可以用( A ) A、hasNext() B、next() C、isNext() D、remove() 18. Collections是集合的一个工具类,里面有很多关于集合的方法,若有一个Arraylist对象 al,要对al中的元素排序,下面正确的是( B ) A.al.sort(); B. Collections.sort(al) C.Collections c =new Collections() c.sort(al); D.Collections.sort() 19. 泛型在集合中的作用是(A) A.在编译的时候检查集合中元素的类型 B.在运行时检查集合中元素的类型 4 / 8
C.帮助进行类型转换 D.可以提高运行效率 20. 泛型通配符使用的符号是:( A ) A .? B. * C. / D.~ 21. 下面代码要将一段字符串循环增加5000次,请选择正确高效的代码(B) A.String temp=”abcdefg” String str=””; for(int i=0;i<5000;i++){str+=temp;} B.String temp=”abcdefg”; StringBuffer sb=new StringBuffer(); for(int i=0;i<5000;i++){sb.append(temp);} C. String temp=”abcdefg”; StringBuffer sb=new StringBuffer(); for(int i=0;i<5000;i++){sb+=temp; } D.String temp=”abcdefg” StringBuffer sb=””; for(int i=0;i<5000;i++){sb+=temp; } 22. 关于集合List的说法正确的是( B ) A.Arraylist ,linkedList 都是实现了List接口,而vector不是 B.linkedList更适合增加删除操作频繁的场合 C.ArrayList是线程同步安全的 D.Vector中的元素是无序的 23. 通过Math类获得一个随机值,下面语句正确的是(C) A、Math m=new Math(); int i=m.random(); B、int i=Math.random(); C、double d=Math.random(); D、 Math m=new Math(); double d =m.random(); 24. 关于HashSet集合类的说法,正确的是(d) A. HashSet是有序的 B. HashSet中可以有两个相同的元素 C. HashSet中的元素不能相同,判断的方法是== 5 / 8
D. HashSet中的元素不能相同,判断的方法是equals返回值和hashCode返回值 25. 通过Random类产生一个0-24之间的随机数,正确的是( D ) A.int i=Random.nextInt(); B.int i=Random.nextInt(25); C.Random r=new Random(); int i=r.nextInt(); D.Random r=new Random(); int i=r.nextInt(25); 26. 请认真分析下列程序: public class Test { public static void main(String[] args) { String s=""; String s1="aaa*bbb*ccc*ddd"; String[] s2=s1.split("[*]"); for(int i = 0 ;i s+=s2[i]; } System.out.println(s);}} 该程序运行结果是:( D ) A.会输出一个空结果 B.null C. aaa*bbb*ccc*ddd D. aaabbbcccddd 27. 在Java中,(B)接口位于集合框架的顶层。(选择一项) A) HashMap B) Collection C) Set D) List 28. 如果你想存储一组无序但唯一的对象,你会使用__B______ A.Vector B.HashSet C.ArrayList D.HashMap 29. 在Java中,如果在字符串类型对象s=“java”中,得到字母‘v’出现的位置(即索引2),可使用(c )。 A) mid(2, s); B) charAt(2); C) s.indexOf(‘v’); D) indexOf(s, ‘v’); 30. Thing是一个类,下面的代码可以产生(B)个Thing类型的对象。 Thing item; Thing stuff; item = new Thing();