admin 管理员组

文章数量: 1087139


2024年3月7日发(作者:编写java)

JAVA考核-数据类型和运算符第一部分 英语测试(每题1分,共10分)1 .(单选) oriented ( A )A 面向 B 向上 C向下 D 方向2 .(单选) Object ( B)A 目标 B 对象 C 象征 D 锚3 .(单选) integer ( D)A 小数 B 浮点数 C 实数 D 整数4 .(单选) syntax ( C) A 标识符 B 句号 C 语法 D 选择5 .(单选) infinity ( A)A 无穷 B 确定 C 渺小 D孤独6. (单选) insert ( B) A 导出 B 嵌入 C 往上 D 动作7 .(单选) instance ( C)A 插入 B 迅速 C 实例 D 速溶8 .(单选) comment ( A)A 注释 B 语句 C 内容 D 文档9.(单选)String ( D)A一束 B一捆 C一打 D一串10.(单选)conversion ( A)A转换 B分配 C指定 D优化第二部分 知识点测试(90分)一、选择题(每题1.5分,共67.5分)1 . 用8位无符号二进制数能表示的最大十进制数为 (C)A. 127 B. 128 C. 255 D. 2562 .以下能作为char类型的字面值的有(BDE)A. "e" B. 'f' C. 'u12' D. 'u0012' E. 'n'3 .

byte变量的取值范围是(B)A. 0~65535 B. -128~127 C. -256-255 D. 0~32767

4. 以下选项中正确的有(ACD)A.

int i = 32; B.

float f = 45.32; C.

double d=3.2; D.

double d=9.21D;5 .假定x和y为double型,则表达式x=2,y=x+3/2的值是(D)A. 3.5 B. 3 C. 2.0 D. 3.06 .下列对于>>和>>>操作符描述正确的是(A)A. 当左面的操作数是正数时,>>和>>>结果相同。B. (-1 >> 1)的结果是0。 C. (-1 >>> 1) 的结果是-1。 D. 只有在右面的操作数大于等于1时, >>> 才会返回负数。7 .有如下一段代码:1)public class ReturnIt{2) returnType methodA(byte x, double y){3) return x/y*2;4) }5) }在第2行中,方法methodA的有效返回类型returnType应该是?(D)A. int B. byte C. short D. double8. 下列代码的执行结果是(D)1)public class Beirun{2) public static void main(String args[]){3) float t=9.0f;4) int q=5;5) n((t++)*(--q));6) }7)}A. 40 B. 40.0 C. 36 D. 36.09.下列代码的执行结果是(D)1)public class Beirun{2) public static void main(String args[]){3) n(5/2);4) }5)}A. 2.5 B. 2.0 C. 2.50 D. 210. 下列代码的执行结果是(B)1)public class Beirun{2) public static void main(String args[]){3) n(100%3);

4) n(100%3.0);5) }6)}A. 1和1 B. 1和1.0 C. 1.0和1 D. 1.0和1.011. 下列运算符中,(CD)是布尔逻辑运算符A. ++ B. << C. || D. &12. 下列哪个文档注释可以被java doc 提取生成API(C)A. // B. /*.....*/ C. /**.....*/ D. 以上都可以13 下列哪一项不能作为标识符的开始(D)A. 字符 B. 下划线 C. 美元$ D. 数字14.

如下哪些字串是Java中的标识符(AE)A. fieldname C.3number D.#number E.$number15.

如下哪些是Java中有效的关键字(ACDE) A. const 16.

如下哪些是Java中正确的整数表示(ABC) A.22 B.0x22 C.022 D.22H17.下面的代码段中,执行之后i 和j 的值是什么(C)int i = 1;int j;j = i++;

A.1, 1 B.1, 2 C.2, 1 D.2, 218.下面哪些是正确的(AD) A. >> 是算术右移操作符. B.>> 是逻辑右移操作符. C.>>> 是算术右移操作符 D.>>> 是逻辑右移操作符19.

下面哪些赋值语句是合法的(BCD) a = 2.0 b = 2.0 c = 2 d = 2解析:由于小数的字面值为double,A选项的赋值有丢失精度的危险,所以不合法。20. 面哪个是main()函数的合法参数(C) args[] args[][] args[] args21. 已知如下的命令执行 java MyTest a b c。请问哪个语句是正确的?(C)A. args[0] = "MyTest a b c" [0] = "MyTest" [0] = "a" [1]= 'b'解析:args数组代表的是Java程序传入的参数,不包括类名,下标由0开始。22. 下面哪些是合法的标识符? (ABE)

A. $persons B. TwoUsers C. *point D. this E._endline解析:Java中使用的标识符可以是大写和小写字母、数字、下划线(_)、美元符号($)的任意组合,首字母不能是数字,且不能与关键字冲突,所以C和D均是错误的。23.哪些是将一个十六进制值赋值给一个long型变量? (D)A. long number = 345L; B. long number = 0345;C. long number = 0345L; D. long number = 0x345L解析:十六进制用0x加数字表示,long型变量的后缀为L,故选择D。24.下面的哪些答案可以用以表示八进制值8? (A)A. 010 B. 0x10 C. 08 D. 0x8解析:8进制中没有数字8,且以0开头,故选择A。25. 哪些不是Java关键字? (AB)A. TRUE B. sizeof C. const D. super E. void26. 下面哪些不是java的原始数据类型? (BC)A. short B. Boolean C. unit D. float解析:Java的原始数据类型一共就八个,分别是:byte,short,int,long,boolean,char,float,double。注意这些是大小写敏感的,而Boolean是booelan的封装类(wrapper class)。27. 使用"<<"和 ">>"操作符的哪些陈述是对的? (AC)A. 0000 0100 0000 0000 0000 0000 0000 0000<<5 gives1000 0000 0000 0000 0000 0000 0000 0000B. 0000 0100 0000 0000 0000 0000 0000 0000<<5 gives1111 1100 0000 0000 0000 0000 0000 0000C. 1100 0000 0000 0000 0000 0000 0000 0000>>5 gives1111 1110 0000 0000 0000 0000 0000 0000D. 1100 0000 0000 0000 0000 0000 0000 0000>>5 gives0000 0110 0000 0000 0000 0000 0000 0000解析:Java的移位操作符一共有三种,分别是”>>”,”>>>”,”<<”,执行的操作分别是有符号右移,无符号右移,左移,有符号右移的意思是说移入的最高位和原最高符号位相同,无符号右移是移入位始终补零,左移时最低位始终补零,最高位被舍弃。移位操作符另一个非常值得注意的特点是其右操作数是取模运算的,意思是说对于一个int型数据而言,对它移位32位的结果是保持不变而非变成零,即:a>>32的结果是a而不是0,同理,对long型数是对右操作数取64的模,a>>64==a;还有一点

需要注意的是移位操作符”>>>”只对int型和long型有效,对byte或者short的操作将导致自动类型转换,而且是带符号的。28. 下面哪个是int型的取值范围? (D)A. -27 ~ 27-1 B. 0 ~232~1 C. 215 ~ 215-1 D. -231 ~ 231-129. main()方法的返回类型是什么? (C)A. int B. void C. Boolean D. static解析:java中,程序运行的入口就是main()方法,它必须是这样的形式:public static void main(String args[])。但是严格来讲这个题目的答案还可以加上a和c,因为并没有限定是程序入口的main()方法,而main()方法是可以重载的。一般意义上的main()当然就是指我们刚开始所说的main()方法了。30.关于垃圾收集的哪些叙述是对的? (B)A. 程序开发者必须自己创建一个线程进行内存释放的工作。B. 垃圾收集将检查并释放不再使用的内存。C. 垃圾收集允许程序开发者明确指定并立即释放该内存。D. 垃圾收集能够在期望的时间释放被java对象使用的内存。解析:JAVA将内存分配和释放的工组交给了自己,程序员不必做这些工作,它提供一个系统级的线程跟踪每个内存的分配,在JVM的空闲处理中,垃圾收集线程将检查和释放不再使用的内存(即可以被释放的内存)。垃圾收集的过程在java程序的生存期中是自动的,不需要分配和释放内存,也避免了内存泄漏。可以调用()方法建议(suggest)JVM执行垃圾收集以使得可被释放的内存能立即被使用,当此方法返回的时候,JVM已经做了最大的努力从被丢弃的对象上回收内存空间。程序员不能指定收集哪些内存,一般而言也不用关心这个问题,除非是程序的内存消耗很大,特别是有很多临时对象时可以“建议“进行垃圾收集以提高可用内存。需要指出的是调用()方法不能保证JVM立即进行垃圾收集,而只能是建议,因为垃圾收集线程的优先级很低(通常是最低的)31.下面哪些答案可以正确表示十六进制数字10? (A)A. 0xA B. 0x16 C. 0A D. 016解析:十六进制数以0x开头,以0开头的是八进制数。十六进制表示中的a,b,c,d,e,f依次为10,11,12,13,14,15。32.下面的哪些赋值语句是错的? (A)A. float f = 11.1; B. double d = 5.3E12;C. double d = 3.14159; D. double d = 3.14D;解析:浮点数的赋值是带有小数点的数字缺省是double型的,如果在浮点数后面加f或者F则是float,后面加d或者D则是double,科学计数法

形式的浮点数也是double型的,而double的精度比float高,将一个高精度的double赋值给一个低精度的float时需要进行强制类型转换,反之则不需要。33.在Java API文档中下面的哪些部分被包括在内? (ACD)A. 类及用途的描述 B. 父类的方法的列表C. 成员变量的列表 D. 类层次解析:类文档的内容主要是:类层次、类及用途描述、成员变量列表、构造方法列表、成员方法列表、从类层次上继承的方法列表、成员变量的详细说明、构造方法详细说明、成员方法详细说明。34.下面的哪些声明是合法的? (ADE)A. long l = 4990; B. int i = 4L; C. float f = 1.1; D. double d =34.4; E. double t = 0.9F.解析:此题的考点是数字的表示法和基本数据类型的类型自动转换,没有小数点的数字被认为是int型数,带有小数点的数被认为是double型的数,其它的使用在数字后面加一个字母表示数据类型,加l或者L是long型,加d或者D是double,加f或者F是float,可以将低精度的数字赋值给高精度的变量,反之则需要进行强制类型转换,例如将int,short,byte赋值给long型时不需要显式的类型转换,反之,将long型数赋值给byte,short,int型时需要强制转换(int a=(int)123L;)。35.变量"result"是一个boolean型的值,下面的哪些表达式是合法的?(AB)  A. result = true;    B. if ( result ) { // }C. if ( result!= 0 ) { // }   D. result = 1解析:Java的boolean不同于c或者c++中的布尔值,在java中boolean值就是boolean值,不能将其它类型的值当作boolean处理。36. 在java语句中,运算符&&实现(B)A. 逻辑或 B. 逻辑与 C. 逻辑非 D. 逻辑相等37.在java语句中,位运算操作数只能为整型或(B)数据A. 实型 B. 字符型 C.布尔型 D.字符串型 38.00101010(|)00010111语句的执行结果为(C)A. 00000000 B. 11111111 C. 00111111 D. 1100000039. ~0010101语句的执行结果为(A)A. 1101010 B. 0010101 C. 11111111 D. .三元条件运算符ex1?ex2:ex3,相当于下面(A)语句。(ex1) ex2; else ex3; (ex2) ex1;else ex3;(ex1) ex3; else ex2; (ex3) ex2;else ex1;是从( )语言改进重新设计。(B)

A.Ada B.C++ C.Pasacal D.BASIC42.下列语句哪一个正确(B)  A. Java程序经编译后会产生machine codeB. Java程序经编译后会产生byte codeC. Java程序经编译后会产生DLLD. 以上都不正确43.下列运算符合法的是(A)A.&& B.<> C.if D.:=44.下列说法正确的有(BCD)A. 环境变量可在编译source code时指定B. 在编译程序时,所能指定的环境变量不包括class pathC. javac一次可同时编译数个Java源文件D. 能指定编译结果要置于哪个目录(directory)45.下列标识符不合法的有(ACD)A.new B.$Usdollars C.1234 D.二、填空题(除特殊标注外,每空1分,共计22.5分)1.面向对象的三大特征分别是封装、____继承____和____多态____。2. 开发与运行Java程序需要经过的三个主要步骤为___编辑源程序_____、____编译生成字节码____和____解释运行字节码____。3.在java语言中,boolean型常量只有true和__false___两个值。4.设x = 2 ,y=2,则表达式( x++) * 3 的值是__6___, y-- * 3 的值是__6___。5.标识符是以__字母___、___下划线__、美元符号作为首字母的字符串序列。6.下面的语句是声明一个变量并赋值: boolean b1=5!=8;b1的值是___true___。7. 数据类型包括简单数据类型和复合数据类型。复合数据类型又包括类、数组、___接口___。8.八进制整数012表示十进制的___10____,十六进制数0x3CFDE表

示十进制的_______。9.浮点型数据属于实型数据,分为float和___double___两种类型。10.若x = 5,y = 10,则x > y && x++ == y --的逻辑值为___ false____,x和y的值分别为多少___5,10____(1.5分)。11. 表达式(int)(3.7)的值是____3____;int x=1;x*=0.3的值是____0____。12. 在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用__2_个字节内存空间,这样,无论是中文字符还是英文字符,都是占用__2_字节内存空间。13. 每个Java程序语句以___;____结束。(英文分号)


本文标签: 内存 收集 垃圾 释放 数据类型