2 逻辑与(&&)优先级高于逻辑或(||)
① 本语句为条件分支语句,多选一,可以没有else
② 错题分析(找a、b、c的最大值):
//分析:本语句多选一,见true便执行,考虑不周全
4.小驼峰命名法:变量和方法;大驼峰命名法:类
① return 值:1)方法结束 2)返回一个值给调用方
③ 数组:类型相同,逻辑相同 ④ 当所有数据都填充好之后,再找最大值最合理
MaxOfArray求数组元素最大值并放在最后一个元素的下一个位置:声明整型数组并填充随机数据,找到最大值,将数组扩容并将最大值放末尾
//求数组元素的最大值,并将其放在最后一个元素的下一个位置
6.2 冒泡排序及其优化整理
//定义一个布尔类型变量,标记数组是否已达到有序状态 //两两比较。如果大于,则互换元素 //本趟发生了交换,表明该数组在本趟处于无序状态,需要继续排序。
① Student zs=new Student() 意义:一个引用类型变量zs,指向了学生类型的对象 ② 首字母大写都是引用类型 ③ new一个对象,成员变量默认初始化 ④ 重载与参数名称无关,与返回值类型无关,只与参数类型有关
【答案解析】java命令程序执行字节码文件时不能跟文件后缀名 因此C是正确的选项。
2、(单选题)Java编程语言之父是()
【答案解析】詹姆斯·高斯林 (James Gosling,1955年5月19日-,出生于加拿大),软件专家,Java编程语言的共同创始人之一,一般公认他为“Java之父”。
3、(单选题)Java是从()语言改进重新设计
【答案解析】ADA: 美国军方为了整合不同语言开发的系统而发明的一种语言,最大的特点是实时性,在ADA95中已加入面向对象内容. Pascal: 为提倡结构化编程而发明的语言,结构化特色非常明显,函数体内允许任意层次的嵌套. BASIC: 为了让大学生简单容易控制电脑开发的语言,特点是简单易懂,且可以用解释和编译两种方法执行.
4、(单选题)在Java中,以下描述错误的是( )
B..java是编译前的源文件
D.Java程序需编译后方可运行
【答案解析】此题目考查的是Java程序的开发过程。Java程序开发需要经过三个步骤:编写(.java)、编译(.class)、运行。编写的源程序为.java后缀的,编译后为.class的字节码文件,因此选项B、C是正确的,A是错误的。Java文件都需要进行编译,编译后的.class文件可以"一次编译、多次运行",即体现了Java的特点"Write Once,Run
more"。因此D是正确的选项。
5、(多选题)下列哪些选项属于Java技术体系()
6、(多选题)下列对Java语言的叙述中,正确的是()
A.Java虚拟机解释执行字节码
B.Java的类是对具有相同行为对象的一种抽象
C.Java中的垃圾回收机制是一个系统级的线程
【正确答案】A,B,C
【答案解析】在JDK目录结构中,lib目录下存放的都是库文件,而bin目录下有编译器、解释器和许多工具(如服务器工具、IDL、package工具和jdb等)。
B.GC(自动垃圾回收),提高了代码安全性
C.支持类 C 的指针运算操作
D.不支持与其它语言书写的程序进行通讯
【答案解析】java语言支持跨平台,没有指针的概念,拥有GC垃圾自动回收机制。
1、(单选题)在控制台显示消息的语句正确的是( )
2、(单选题)下列的标识符符合Java命名约定的是()
【答案解析】包的名字应该都是由小写单词组成。它们全都是小写字母,即便中间的单词亦是如此,所以A选项错误。 类名的第一个字母一定要大写,所以B选项错误; 变量的第一个字母应该为小写,所以C选项错误; 与属性相对应的get、set方法为:set(get)+属性名,属性名第一个字母为大写,所以D选项正确。
3、(单选题)在Java语言中,被称为内存分配的运算符是()
【答案解析】Java语言中,程序为对象动态分配内存。Java中内存分配的运算符是new。
4、(多选题)下列有关于变量的命名正确的是
A.可以由字母、数字、下划线、”$”组成;
B.首字母能以数字开头
C.首字母不能以数字开头
D.Java大小写敏感,命名变量时需要注意
【正确答案】A,C,D
【答案解析】变量的命名首字母不能是数组开头,其他选项均正确 因此ACD是正确的选项。
5、(多选题)下列有关变量的声明正确的是
【正确答案】B,C,D
【答案解析】A选项中的a没有经过声明,未经声明的变量不能使用,B选项是声明一个int型的number变量, C选项同时声明了两个双精度浮点数(小数)变量,D选项同时声明了两个整型变量 因此BCD是正确的选项。
6、(多选题)下列变量书写正确的是
【答案解析】此题目考查的是变量的命名规范,A选项以数字开头,B选项与关键字冲突,所以AB均错误,C选项是正常命名,D选项是多个单词组合使用驼峰命名法 因此CD是正确的选项。
7、(多选题)从下列选项中选择正确的是( )
【正确答案】B,C,D
【答案解析】A选项创建的是String对象,变量k应为String类型。
1、(单选题)找出下列代码哪行有错误
【答案解析】在 Java 程序中,不同的基本数据类型的数据之间经常需要进行相互转换, 目标类型大于源类型,如 double 类型长度为 8 字节, int 类型为 4 字节,因此 double 类型的变量里直接可以存放 int 类型的数据,但反过来就不可以了 因此C是正确的选项。
2、(单选题)java中char类型的取值范围是()
【答案解析】在java中,char是一个无符号16位类型,取值范围为0到65535。
3、(单选题)java语言中int类型数据占用多少位?( )。
4、(单选题)存储一个24X24点阵的汉字(每个点1bit),需要多少字节( )
【答案解析】24x24/8=72。意思是:24x24的结果是二进制位,而八个二进制位等于 一个字节,所以再除以八是所得的字节数。
5、(单选题)能够给一个byte型变量赋值的范围是()
【答案解析】Byte的取值范围是(-128)~127。
6、(单选题)隐式类型转换是由按优先关系从低到高的顺序,下列描述正确的顺序为( )
7、(多选题)选择 Java 语言中的基本数据类型( )
8、(多选题)下面的哪些声明是合法的( )
9、(多选题)下列代码片段中,存在编辑错误的语句是()
【正确答案】B,C,D
【答案解析】语句1错误:b3=(b1+b2);自动转为int,所以正确写法为b3=(byte)(b1+b2);或者将b3定义为int; 语句2正确:b6=b4+b5;b4、b5为final类型,不会自动提升,所以和的类型视左边变量类型而定,即b6可以是任意数值类型;
语句3错误:b8=(b1+b4);虽然b4不会自动提升,但b1仍会自动提升,所以结果需要强转,b8=(byte)(b1+b4); 语句4错误:b7=(b2+b5); 同上。同时注意b7是final修饰,即只可赋值一次,便不可再改变。
7.4 运算符和表达式
1、(单选题)下面有关于三目运算符的语法格式描述正确的是
A.条件表达式?表达式1:表达式2;
B.条件表达式?条件表达式,表达式1:表达式2;
C.条件表达式!表达式1:表达式2;
D.条件表达式!条件表达式,表达式1:表达式2;
【答案解析】此题目考查的是三目运算符的语法格式: 条件表达式?表达式1:表达式2; 因此A是正确的选项。
2、(单选题)下列有关逻辑运算符的描述错误的是
A.使用“||”运算, 两者只要有其一为真,逻辑表达式结果就为真
B.使用"!"运算,对关系表达式进行取反
C.短路与:若第一个表达式的值为假,后面的表达式不再计算
D.短路或:若第一个表达式的值为假,后面的表达式不再计算
【答案解析】此题目考查的是辑运算符的概念性知识,ABC均正确, 短路或:若第一个表达式的值为假,还需要看后面的表达式是真还是假,因此D选项错误 因此D是正确的选项。
3、(单选题)一下运算结果为true的是
【答案解析】C选项&&运算符左右两侧均为true,因此正确
4、(单选题)设整型变量a为5,使b不为2的表达式是()
【答案解析】首先对于B,除法的结果是保留整数,因此结果b为2。C中使用的是三目表达式,当?之前表达式结果为真的话则取数字2为结果,否则数字1为结果,对于本题5>3 为真,所以b的值为2。D中6-4等于2,所以b为2。取余运算得到的结果是一步计算的余数,因此A中5%2的商是2余数是1,因此b为1。所以本题A是正确选项。
5、(单选题)编译运行以下程序后,关于输出结果的说明正确的是( )
【答案解析】三目运算符中:第二个表达式和第三个表达式中如果都为基本数据类型,整个表达式的运算结果由容量高的决定。99.9是double类型而9是int类型, double 容量高。
6、(单选题)以下表达式那个是不合法的()
【答案解析】java对"+"进行了扩展,不仅可以连接字符串,而且还能将字符串与其它类型数据进行连接,结果是字符串。 若"+"的第一个操作数是字符串,Java会自动将后面的操作数类型转换成字符串类型。 本题选项A中,x+=y即x=x+y,则计算结果x的值为字符串Hello9; 选项C与此类似,故此选项也是正确的;
7、(单选题)若a为整型变量,a=12,则表达式:a-=2的值为
【答案解析】此题的运算结果a=12-2,即a=10. 因此A是正确的选项.
8、(单选题)在字符串前面加上( )符号,则字符串中的转义字符将不被处理。
【答案解析】JAVA中使用""符号进行转移
9、(单选题)若定义int a=2,b=2,下列表达式中值不为4的是()
【答案解析】C选项里b是后++,先运算,后+1,不影响表达式。 D选项里b是前++,先+1,后运算,所以D输出的结果是6!
【答案解析】++和—可以出现操作数的左边也可以是右边,此题++出现在左边,让a先执行自增运算,然后将值赋值给变量b 因此D是正确的选项。
11、(多选题)下列有关逻辑运算符描述正确的是
【答案解析】此题目考查的是对逻辑运算符的掌握,以上选项均正确. 因此ABCD是正确的选项。
12、(多选题)下列有关算数运算符描述正确的是
A.“/”代表除法运算符
B.“/”代表求余运算符
C.“%”代表除法运算符
D.“%”代表求余运算符
【答案解析】/代表除法运算符,%代表%求余运算符 因此AD是正确的选项。
1、(单选题)下面的方法,当输入为2的时候返回值是多少?()
2、(单选题)Java 中关于 if 语句描述错误的是( )
A.if 语句是根据条件判断之后再做处理的一种语法结构
B.关键字 if 后小括号里面条件表达式的值必须为布尔类型
C.if 后小括号里的表达式的值为 false 时,程序需要执行后面大括号里的语句
【答案解析】if 后小括号里必须是一个条件表达式,结果为布尔值,如果为 true ,则执行后面大括号中的代码,如果为 false,则不执行 因此C是正确选项
3、(单选题)给定代码:
【答案解析】没有break,从case 4开始一直执行到最后,j自加3次变成了4,结果返回8
【答案解析】(y!=0)&&(x<4)中,&&叫做短路与,如果前面的条件表达式已经为假了,整个条件表达式肯定为假,y!=0是假,所以条件不成立,for循环不执行。
【答案解析】此题目考查的是for循环,
3、(单选题)选择下面代码的运行结果:( )
【答案解析】i变量的作用范围是整个for循环中。
4、(单选题)下列关于循环说法错误的是( )
C.do...while 循环的循环体至少无条件执行一次
D.for 语句构成的循环可以用其他循环语句替换
【答案解析】do...while 循环结束的条件是 while 后的条件不成立 因此B是正确选项
5、(单选题)下列代码哪行会出错()
【答案解析】变量k没有被初始化
多选题 (共计 1 题,总计 2分)
6、(多选题)已知如下代码:
【答案解析】do?while循环中循环体一定会先执行一次
1、(单选题)当编译并运行下面程序时会出现什么结果( )
【答案解析】这里会发生运行错误,错误原因是访问数组下标越界了
【答案解析】x属于引用类型,该引用类型的每一个成员是int类型,默认值为:0
3、(单选题)以下代码的执行结果是()
【答案解析】float型数组中的元素都是float,默认初始值是0.0。
4、(单选题)下列数组的初始化正确的是()
【答案解析】选项 A 需要指定数组的长度;选项 C 在声明数组的同时赋值时不能指定数组长度;选项 D 声明数组的语法错误,应为int[ ] score={ 78, 23, 44, 78 }; 因此选择 B
5、(单选题)对记录序列{314,298,508,123,486,145}按从小到大的顺序进行插入排 序,经过两趟排序后的结果为()
【答案解析】此题为插入排序算法,代码如下:
// 第一个元素作为一部分,对后面的部分进行循环
6、(单选题)下面哪个是正确的( )
【答案解析】数组声明初始化时前面的接收变量类型应该是数组类型,需要具有"[]"号, 且数组中每个元素都必须是统一指定类型,并且元素间需要使用","号分隔。
【答案解析】数组下标从 0 开始,因此 score[3] 表示数组中的第 4 个元素 因此D是正切选项
【答案解析】数组下标是从零开始的,但是数据下标的总量和数据长度相同。
9、(多选题)下列说法错误的有()
B.数组属于一种原生类
D.数组的大小可以任意改变
【正确答案】B,C,D
10、(多选题)下列选项中创建数组能够编译通过的是( )
【答案解析】任何类的父类都是 Object,数组属于引用类型,Object oa = new float[20];这种写法相当于父类的引用指向子类的实例。
1、(单选题)关于 Java 类中带参数的方法,下列选项中说法错误的是
A.使用带参数的方法分为两步:定义带参数的方法,调用带参数的方法
B.带参数方法的返回值不能为 void
C.带参数方法的参数个数可以为一个或多个
D.带参数方法的参数可以是任意的基本类型数据或引用类型数据
【答案解析】带参数方法的返回值可以为 void 因此B是正确的选项。
2、(单选题)下列有关实参和形参说法正确的是()
A.形参是指在定义方法时参数列表中的参数 实参是指在调用方法时所传入的实际数据
B.形参变量的作用域是在整个类中都可以使用
C.实参只能是字面量值不可以是变量
【答案解析】形参是指在定义方法时参数列表中的参数,实参是指在调用方法时所传入的实际数据。 形参是局部变量,作用域在方法体内,出了方法后不可见。 实参可以是字面量常量值也可以是变量,只要是可以在调用方法时传入的数据就是实参。 形参是可以用 final 来修饰的,被 final 修饰的形参被赋初值后值不可以再改变。 所以 A 正确。
3、(单选题)阅读下列代码;
【答案解析】main方法是程序执行的入口,在本程序中main方法中的语句"System.out.println(s);"无法调用在main方法外声明的变量,所以编译时出错。
4、(单选题)判断方法重载的依据,错误的是:
C.方法参数的个数、顺序或类型不同
D.与方法的修饰符或返回值没有关系
【答案解析】方法重载必须是相同的方法名 因此B是正确的选项。