Java经典笔试题—day09

Java经典笔试题—day09

  • 🔎选择题
  • 🔎编程题
    • 🥝另类加法
    • 🥝走方格的方案数
  • 🔎结尾

🔎选择题

(1)下面程序的输出是 ( )

String x=“fmn”;
x.toUpperCase();
String y=x.replace(‘f’,‘F’);
y=y+“wxy”;
System.out.println(y);

A.FmNwxy
B.fmnwxy
C.wxyfmn
D.Fmnwxy

D

toUpperCase() 方法会返回一个字符串作为转换成大写字母后的结果
x.toUpperCase() 只是调用该方法, 并没有去接受返回值, 所以 x 的值依然是 “fmn”
字符串 y 将 x 中的 f 替换为 F, 拼接 wxy, 输出 Fmnwxy
在这里插入图片描述

(2)在 java 中,一个类可同时定义为许多同名的方法,这些方法的形式参数个数,类型或顺序各不相同,传回的值可能各不相同,这种面向对象的特性称为()

A.隐藏
B.覆盖
C.重载
D.无此特性

C

重载的特性
方法名相同, 参数列表不同(参数的类型, 参数的个数, 参数的顺序), 返回值不做要求

(3)关于 JAVA 的堆,下面说法错误的是()

A.所有类的实例和数组都是在堆上分配内存的
B.对象所占的堆内存是由自动内存管理系统回收
C.堆内存由存活和死亡的对象,空闲碎片区组成
D.数组是分配在栈中的

D

A. 类的实例化和数组的开辟都是需要 new 的, 因此都是在堆上分配内存的
B. 对象所占的堆内存是由自动内存管理系统回收
C. 堆内存由存活和死亡的对象,空闲碎片区组成
D. 数组分配在堆中

(4)一个以“.java”为后缀的源文件 ( )

A.只能包含一个public类,类名必须与文件名相同
B.只能包含与文件名相同的public类以及其中的内部类
C.只能有一个与文件名相同的public类,可以包含其他非public类(不考虑内部类)
D.可以包含任意public类

C

A. 没考虑内部类
B. 还能包含其他的类
D. 只能包含一个 public 类(不考虑内部类)

(5)JAVA 语言的下面几种数组复制方法中,哪个效率最高?

A.for循环逐一复制
B.System.arraycopy
C.Arrays.copyOf
D.使用clone方法

B

执行效率
System.arraycopy() > Object.clone() > Arrays.copyof() > for

(6)()仅包含方法定义和常量值

A.接口
B.变量
C.单元
D.成员

A

接口是一种规范, 需要类去实现接口中的方法, 因此接口中仅包含方法的定义和常量值

(7)对文件名为Test.java 的 java 代码描述正确的是 ( )

class Person {
	String name = "No name";
	public Person(String nm) {
		name = nm;
	}
}
class Employee extends Person {
	String empID = "0000";
	public Employee(String id) {
		empID = id;
	}
}
public class Test {
	public static void main(String args[]) {
		Employee e = new Employee("123");
		System.out.println(e.empID);
	}
}

A.输出:0000
B.输出:123
C.编译报错
D.输出:No name

C

实例化 Employee 类时, 由于 Employee 继承了 Person, 因此先去调用 Person 类的构造方法
系统提供的 super() 默认是无参数的, 而 Person 类的构造方法需要参数, 因此编译报错
在这里插入图片描述
在这里插入图片描述

(8)有关下述 Java 代码描述正确的选项是 ( )

public class TestClass {
   private static void testMethod(){
        System.out.println("testMethod");
   }
   public static void main(String[] args) {
        ((TestClass)null).testMethod();
   }
}

A.编译不通过
B.编译通过,运行异常,报NullPointerException
C.编译通过,运行异常,报IllegalArgumentException
D.编译通过,运行异常,报NoSuchMethodException
E.编译通过,运行异常,报Exception
F.运行正常,输出testMethod

F

testMehod() 被 static 修饰, 属于静态方法, null 被强转为 TestClass 类, 因此可以调用 testMethod() 方法
在这里插入图片描述
在这里插入图片描述

(9)下列 java 程序的输出结果为 ( )

public class Example{
    String str=new String("hello");
    char[]ch={'a','b'};
    public static void main(String args[]){
        Example ex=new Example();
        ex.change(ex.str,ex.ch);
        System.out.print(ex.str+" and ");
        System.out.print(ex.ch);
    }
    public void change(String str,char ch[]){
        str="test ok";
        ch[0]='c';
    }
}

A.hello and ab
B.hello and cb
C.hello and a
D.test ok and ab
E.test ok and cb
F.test ok and c

B

change() 方法是引用传递
进入 change() 方法的形参 str 最初指向的是 “hello” 的地址
当执行到 str = “test ok” 时, 形参 str 指向的是 “test ok” 的地址
而实参 str 仍然指向的是 “hello” 的地址
ch[0] = ‘c’ 是将 ch 所指向地址的值进行了修改, 即 char[] ch = {‘c’, ‘b’}
但 ch 所指向的对象未发生改变
在这里插入图片描述
在这里插入图片描述

(10)在jdk1.5之后,下列 java 程序输出结果为 ( )

int i=0;
Integer j = new Integer(0);
System.out.println(i==j);
System.out.println(j.equals(i));

A.true,false
B.true,true
C.false,true
D.false,false
E.对于不同的环境结果不同
F.程序无法执行

B

基本类型和包装类型进行 == 比较时, 包装类型会自动拆包变为基本类型再去进行比较, 因此 Integer(0) 会变为 int j = 0 再去进行 == 比较, 结果为 true
两个 Integer 类型进行 == 比较, 如果其值在 -128 ~ 127(闭区间), 返回 true. 否则返回 false
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
两个包装类进行 equals() 比较, 首先会判断类型是否相同, 如果类型相同, 则继续比较值, 如果值相同, 则返回 true

🔎编程题

🥝另类加法


题目描述

给定两个int A和B。编写一个函数返回A+B的值,但不得使用+或其他算数运算符

在这里插入图片描述

解题思路

  • 通过异或与按位与进行操作
    • 异或表示无进位相加
    • 按位与表示两数相加后需要进位的部分
    • << 1 表示将需要进位的部分进1位
    • 当按位与的结果为0, 此时异或的结果就是最后的答案(因为需要进位的没有了)

在这里插入图片描述
在这里插入图片描述

public static int addAB(int A, int B) {
        // write code here
        int Eor = A;
        while(B != 0) {
            Eor = A ^ B;
            B = (A & B) << 1;
            A = Eor;
        }
        return Eor;
}

📢题目链接
链接: link


🥝走方格的方案数


题目描述

请计算n*m的棋盘格子(n为横向的格子数,m为竖向的格子数)从棋盘左上角出发沿着边缘线从左上角走到右下角,总共有多少种走法,要求不能走回头路,即:只能往右和往下走,不能往左和往上走。

注:沿棋盘格之间的边缘线行走

输入描述

输入两个正整数n和m,用空格隔开。(1≤n,m≤8)

输出描述

输出一行结果

在这里插入图片描述

解题思路

采用递归求解

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

//走方格的方案数
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        while(scan.hasNextInt()) {
            int n = scan.nextInt();//横向(行)
            int m = scan.nextInt();//纵向(列)

            int ret = getRet(n,m);
            System.out.println(ret);
        }
    }

    private static int getRet(int n,int m) {
        if((n == 1 && m >= 1) || (n >= 1 && m == 1)) return n + m;
        int bottomArea = getRet(n - 1, m);
        int rightArea = getRet(n, m - 1);
        return rightArea + bottomArea;
    }
}

📢题目链接
链接: link


🔎结尾

创作不易,如果对您有帮助,希望您能点个免费的赞👍
大家有什么不太理解的,可以私信或者评论区留言,一起加油

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/21199.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vue3-黑马(十)

目录&#xff1a; &#xff08;1&#xff09;vue3-antdv-全局提示与校验 &#xff08;2&#xff09;vue3-进阶-router-入门 &#xff08;3&#xff09;vue3-进阶-router-动态导入-嵌套路由-重定向 &#xff08;1&#xff09;vue3-antdv-全局提示与校验 当用户新增修改&…

​GPT充当大脑,指挥多个模型协作完成各类任务,通用系统AutoML-GPT来了

使用 ChatGPT 实现通用人工智能&#xff0c;思路打开了。 当前&#xff0c;AI 模型虽然已经涉及非常广泛的应用领域&#xff0c;但大部分 AI 模型是为特定任务而设计的&#xff0c;它们往往需要大量的人力来完成正确的模型架构、优化算法和超参数。ChatGPT、GPT-4 爆火之后&…

Unity用AI制作天空盒,并使用,详细图文教程

Unity用AI制作天空盒&#xff0c;并使用&#xff0c;详细图文教程 效果AI制作使用总结版权声明 效果 先上我自己做的效果 AI制作 首先登录AI制作的网站&#xff0c;打开就可以用&#xff0c;不需要登录 这是网址&#xff1a;https://skybox.blockadelabs.com/ 1.创建新的 2…

Jmeter的提取值存入csv或excel中,BeanShell PostProcessor后置处理器可满足

实际用户场景&#xff1a;用户登录小游戏&#xff0c;可进行各种操作&#xff0c;例如查看排行榜&#xff0c;玩游戏&#xff0c;进行留言等&#xff0c;现在需要对三个接口查看排行榜/玩游戏/留言进行压测&#xff0c;有两种压测方案&#xff1a; 方案一&#xff1a;将登录接…

2023年Android开发者路线-第1部分

2023年Android开发者路线-第1部分 2023年Android开发者路线-第2部分 2023年Android开发者路线-第3部分 2023年Android开发者路线-第4部分 2023年Android开发者路线-第1部分 Android 生态系统处于不断发展的状态&#xff1a;每天都会引入新的库和资料&#xff0c;旨在加快开…

DI依赖注入(setter注入、构造器注入、自动装配、集合注入)

文章目录 1 setter注入1.1 环境准备1.2 注入引用数据类型步骤1:声明属性并提供setter方法步骤2:配置文件中进行注入配置步骤3:运行程序 1.3 注入简单数据类型步骤1:声明属性并提供setter方法步骤2:配置文件中进行注入配置步骤3:运行程序 2 构造器注入2.1 环境准备2.2 构造器注入…

【Linux】信号的处理

信号篇终章 文章目录 前言一、信号的处理 1.可重入函数 2.volatile关键字 3.SIGCHLD信号总结 前言 在前两篇linux文章中我们详细的讲解了信号的产生和信号的保存&#xff0c;今天来到最后一个重点信号的处理&#xff0c;对于信号的处理我们会重新引入进程…

19c rac环境修改pubic, vip,scan ip步骤

19c rac环境第一次修改public、vip和scan ip&#xff0c;和11g还是稍有不同。首先说明下环境 具体步骤如下 1、修改public地址&#xff0c;关闭实例后使用root用户操作 [rootdb1 ~]# ./oifcfg getif bond0 172.20.30.0 global public bond2 100.100.100.0 global clust…

Vivado 下 IP核之 PLL实验

目录 实验任务&#xff1a;Vivado 下 IP核之 PLL实验 1、实验简介 2、实验环境 3、实验原理 3.1、PLL IP核简介 3.2、MMCM 和 PLL 各自的含义以及两者的区别 3.3、PLL 分频 和 倍频 的工作原理 3.4、实验任务 4、建立工程 4.1、PLL IP 核配置 4.2、模块设计 4.…

计算卸载-论文05-双层优化(无线充电与卸载)

标题&#xff1a;《A Divide-and-Conquer Bilevel Optimization Algorithm for Jointly Pricing Computing Resources and Energy in Wireless Powered MEC》 期刊&#xff1a;IEEE TRANSACTIONS ON CYBERNETICS&#xff0c;2022 一、理论梳理 问题&#xff1a;相比于移动云…

Espresso Sequencer:针对Rollup生态的Decentralized Shared Sequencing Layer

1. 引言 前序博客&#xff1a; Rollup去中心化Rollup DecentralizationAztec 征集 Rollup Sequencer去中心化提案Espresso Sequencer&#xff1a;去中心化RollupsRadius&#xff1a;针对Rollup生态的Trustless Shared Sequencing层 当前的L2 Rollup方案在扩容的同时&#xf…

​AI + 非遗文化传播,人工智能师资培训重磅招募

大语言模型热度空前&#xff0c;诸如文心一言、 ChatGPT 等已经能够与人对话互动、回答问题、协助创作&#xff0c;逐渐应用于人们的工作和生活&#xff0c;也引发了社会热议。为推动大模型及人工智能相关专业人员的培养&#xff0c;同时将人工智能技术融入非遗文化传播&#x…

心血管疾病预测--逻辑回归实现二分类

一、实现效果 实现心血管疾病的预测准确率70%以上 二、数据集介绍 数据共计70000条&#xff0c;其中心血管疾病患者人数为34979&#xff0c;未患病人数为35021。数据特征属性12个分别为如下所示:生理指标(性别、年龄、体重、身高等)、 医疗检测指标(血压、血糖、胆固醇水平等)…

青龙面板使用教程,以及安装

1. 青龙面板使用教程&#xff0c;以及安装 首先青龙面板是在docker里面的&#xff0c;我们要安装一个docker 我这里只有debian 11 安装的教程 如何在debian11上安装docker - 知乎 这个文章不错了&#xff0c;按命令执行就好了&#xff0c;其他操作系统的。去网上搜索安…

Helm方式部署 zookeeper+kafka 集群 ——2023.05

文章目录 版本概况一、添加helm仓库二、安装部署集群2.1 在线安装zookeeperkafka集群2.2 离线安装zookeeperkafka集群 三、验证kafka与zookeeper是否绑定四、测试集群附&#xff1a;可改善地方卸载应用 版本概况 服务版本centos7.9kubernetesv1.20.15helmv3.10.1zookeeper3.8.…

Python通过natcap.invest库调用InVEST模型批处理数据(Carbon Storage and Sequestration模块)

InVEST&#xff08;Integrated Valuation of Ecosystem Servicesand Tradeoffs&#xff09;生态系统服务和权衡的综合评估模型&#xff0c;旨在通过模拟不同土地覆被情景下生态系统物质量和价值量的变化。它提供了多种生态系统服务功能评估&#xff0c;包括了淡水生态系统评估、…

【问题记录】USB monitor抓包工具显示音频数据CRC error

一&#xff0c;简介 在进行UAC2.0调试的过程中&#xff0c;使用USB monitor抓包工具抓取音频流数据出现数据错乱现象&#xff0c;本文对该问题进行分析记录。 二&#xff0c;问题记录及分析过程 2.1 先看下正常的抓包数据是什么样子&#xff1a; 从上图可以看出&#xff0c;…

《The Element of Style》阅读笔记 —— 章节 I Elementary Rules of Usage

前言&#xff1a;本科期间担任科研助理时&#xff0c;有幸从导师那里借来这本书通读&#xff0c;只记得自己当时在本子上做了一些笔记&#xff0c;但是想不起来具体记了什么&#x1f602;前段时间再次从学院的讲座活动中听闻这本书&#xff0c;决定重温一遍&#xff0c;本篇为此…

js原生实现pc端日历组件

业务场景 客户要求日期选择使用pc端的样式&#xff0c;前端在x5平台上&#xff0c;也就是需要用原始html、js、css等实现&#xff0c;笔者使用于 原生javascript封装的PC端日历插件&#xff0c;不依赖任何第三方插件&#xff0c;复制的代码文件较长&#xff0c;可跳到 总结 处…

React 内 JSX了解及使用

目录 jsx基本概念及例子 jsx的基本用法 JSX表达式&#xff08;有执行结果&#xff09; {} 语法嵌入不同的值 所呈现出来的特点 标签内行内样式 自定义组件 驼峰命名 Jsx的全称是Javascript XML&#xff0c;react定义的一种类似XML的JS拓展语法&#xff1a;JSXML&#xf…