Java编程达人:每日一练,提升自我

目录

题目

选自菜鸟教程

1.以下哪个单词不是 Java 的关键字?

A. static

B. Boolean

C. void

D. private

正确,选项 B. Boolean 并不是 Java 的关键字。在 Java 中,Boolean 实际上是一个封装类,

用于将基本类型boolean 封装为对象。

而 A. static,C. void 和 D. private 都是 Java语言的关键字,分别用于定义静态成员、无返回值的方法或构造函数,以及私有访问权限的成员。

2.boolean 类型的默认值为?

A .true

B .false

C .null

D .未定义

选项 B. false 是正确的。在 Java 中,boolean 类型的默认值是 false。这通常发生在你声明一个
boolean 类型的变量但没有显式初始化它的时候,比如在数组或者类的成员变量中。在这些情况下,boolean 变量会被自动初始化为false。

这与 int、float 等数值类型的默认值初始化为 0 或 0.0 类似,而 Object 类型的默认值则初始化为 null

3.以下代码输出正确的是?

markup 复制代码
public class Test {
    public static void main(String[] args) {
        String s1 = "runoob";
        String s2 = "runoob";
        System.out.println("s1 == s2 is:" + s1 == s2);
    }
}

A. true

B. s1 == s2 is:false

C. s1 == s2 is:true

D. false

D输出结果为 false。

因为在 Java 中 + 操作符的优先级大于 ==,所以输出部分表达式等于 "s1 == s2 is:runoob" ==

"runoob",该表达式计算结果为 false。

添加括号就是c

4.以下代码,输出结果为:

public class Test {

public static void main(String args\[\]) {

int x=4;

System.out.println(x++);

}

}

A. output=0

B. output=6

C. output=5

D.output=4

选项 D. output=4 是正确的。在代码中的 x++ 表达式是一个后置自增运算符。这意味着它首先返回 x 的当前值(这里是

4),然后将 x 的值增加 1。

因此,当 System.out.println(x++) 执行时,它会先输出 x 的当前值,即4,然后 x 的值变为 5,但这不会影响到已经发生的输出。所以,输出结果为 4。

在 Java 中,后置自增(或自减)运算符与前置自增(或自减)运算符的行为有所不同。前置自增(如++x)会在使用表达式值之前先增加变量的值,而后置自增(如 x++)则是在使用表达式值之后增加变量的值。

5.以下代码输出结果为:

1 public class IfTest{

2 public static void main(String\[\] args){

3 int x=3;

4 int y=1;

5 if(x=y)

6 System.out.println("不相等");

7 else

8 System.out.println("相等");

9 }

10}

A. 不相等

B. 相等

C. 第五行代码会引起编译错误

D. 程序正常执行,但没有输出结果

C.第五行代码会引起编译错误。

在 Java 中,使用 = 表示赋值,而 == 用于比较两个值是否相等。在给出的代码中,if(x=y) 实际上是在尝试将 y

的值赋给 x,这会导致 x 的值变为 1。然而,这种用法在 if 语句中是不正确的,因为 if

语句期望一个布尔表达式作为条件,而赋值操作返回的是被赋值的值,不是一个布尔值。

正确的写法应该是 if(x == y) 用于比较 x 和 y

的值是否相等。由于原代码中使用了赋值操作而不是比较操作,编译器会检测到错误并阻止代码的编译,提示类型不匹配的错误。这是因为 if

语句期望一个布尔类型的表达式,而 x=y 的结果是一个整型值,这与 if 语句的期望不符。

6.以下代码输出结果为?

markup 复制代码
class Test
{
    public static void main(String[] args)
    {
        StringBuffer a = new StringBuffer("Runoob");
        StringBuffer b = new StringBuffer("Google");
        a.delete(1,3);
        a.append(b);
        System.out.println(a);
    }
}

A. oobGoogle

B. RoobGoogle

C. RuoobGoogle

D. RuobGoogle

选项 B. RoobGoogle 是正确的。

在代码中,StringBuffer a = new StringBuffer("Runoob"); 创建了一个名为 a 的
StringBuffer 对象,初始化值为 "Runoob"。接下来的 a.delete(1,3); 调用 delete

方法从 a 中删除从下标 1(包含)到下标 3(不包含)的字符。由于字符串的下标是从 0 开始的,这意味着 "u" 和 "n"

会被删除,结果是 "Runoob" 变成 "Rooob"。

然后,a.append(b); 将 b 的内容添加到 a 的末尾。由于 b 的值是 "Google",a 现在变成了
"RooobGoogle",但因为 "n" 和 "o" 中的 "o" 已经被删除,所以最终结果是
"RoobGoogle"。

因此,当 System.out.println(a); 执行时,输出的结果是 "RoobGoogle"。

7.float 变量的默认值为?

A. 0.0d

B. 0.0f

C. 0

D. 未定义

答案B

8.以下哪项不是 Java 关键字?

A. static

B. try

C. Integer

D. new

答案CInteger 不是 java 关键字。

9.空引用可用于访问静态变量或方法 ?

A正确

B 错误

A 正确

A在 Java 中,空引用(即 null 引用)可以用来访问静态变量或调用静态方法。这是因为静态成员是属于类的,而不是属于类的任何特定实例。当通过空引用访问静态变量或调用静态方法时,不会发生空指针异常,因为这些操作不依赖于对象实例的状态.

10.以下选项哪一个不正确 ?

A. 类在使用之前,需要将类实例化为对象

B.类运行时内存中存在对象

C. 类和对象只是同一个东西的不同名称

D.对象是一个变量,其类型是用于声明变量的类。

选C 类是对象的模板 ,对象是类的具体实例 。

总结

朴实无华,巩固基础。

相关推荐
FITA阿泽要努力2 小时前
Fork Agent:共享上下文的艺术
开发语言·python·agent
小蒜学长2 小时前
基于Spring Boot+Vue3的在线游戏技术指导师匹配系统的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端·在线游戏技术指导
文丑颜不良啊2 小时前
LeetCode226~250题目解析
java·leetcode
小小、码农2 小时前
[特殊字符]【C++11】类的新功能全面解析:移动构造、移动赋值、default、delete、final 与 override
linux·开发语言·网络·c++
Dovis(誓平步青云)2 小时前
逆变器报警却找不到板子,热斑图怎样定位到具体组串
java·开发语言·人工智能·机器学习·卷积神经网络
坐吃山猪2 小时前
Python-Hermite基函数
开发语言·python
摇滚侠3 小时前
《Java并发编程之美》第 2 章 并发编程的其他基础知识 阅读笔记 3
android·java·笔记
空~自由3 小时前
Python 正则 . * ? .* .*? (.*?) 通俗讲解
开发语言·python
墨子夕3 小时前
设计模式——Java × Python 双语言精讲 · 23 个经典模式 + 现代演进(第一篇)
java·python·设计模式
程序 代码狂人3 小时前
经典 SQL 面试题:连续登录问题的两种经典解法
java·开发语言·算法