OCP Java17 SE Developers 复习题04

======================答案=========================
F. Line 5 does not compile. This question is checking to see whether you are paying attention to the types. numFish is an int, and 1 is an int. Therefore, we use numeric addition and get 5. The problem is that we can't store an int in a String variable. Suppose line 5 said String anotherFish = numFish + 1 + "";. In that case, the answers would be option A and option C. The variable defined on line 5 would be the string "5", and both output statements would use concatenation.

======================答案=========================
C, E, F. Option C uses the variable name as if it were a type, which is clearly illegal. Options E and F don't specify any size. Although it is legal to leave out the size for later dimensions of a multidimensional array, the first one is required. Option A declares a legal 2D array. Option B declares a legal 3D array. Option D declares a legal 2D array. Remember that it is normal to see classes on the exam you might not have learned. You aren't expected to know anything about them.

======================答案=========================
A, C, D. Option B throws an exception because there is no March 40. Option E also throws an exception because 2023 isn't a leap year and therefore has no February 29. Option F doesn't compile because the enum should be named Month, rather than MonthEnum. Option D is correct because it is just a regular date and has nothing to do with daylight saving time. Options A and C are correct because Java is smart enough to adjust for daylight saving time.

======================答案=========================
A, C, D. The code compiles fine. Line 3 points to the String in the string pool. Line 4 calls the String constructor explicitly and is therefore a different object than s. Line 5 checks for object equality, which is true, and so it prints one. Line 6 uses object reference equality, which is not true since we have different objects. Line 7 calls intern(), which returns the value from the string pool and is therefore the same reference as s. Line 8 also compares references but is true since both references point to the object from the string pool. Finally, line 9 is a trick. The string Hello is already in the string pool, so calling intern() does not change anything. The reference t is a different object, so the result is still false.

======================答案=========================
B. This example uses method chaining. After the call to append(), sb contains "aaa". That result is passed to the first insert() call, which inserts at index 1. At this point, sb contains abbaa. That result is passed to the final insert(), which inserts at index 4, resulting in abbaccca.

======================答案=========================
C. Remember to watch return types on math operations. One of the tricks is line 24. The round() method returns an int when called with a float. However, we are calling it with a double, so it returns a long. The other trick is line 25. The random() method returns a double. Since two lines have a compiler error, option C is the answer.

======================答案=========================
A, E. When dealing with time zones, it is best to convert to GMT first by subtracting the time zone. Remember that subtracting a negative is like adding. The first date/time is 9:00 GMT, and the second is 15:00 GMT. Therefore, the first one is earlier by six hours.

======================答案=========================
A, B, F. Remember that indexes are zero-based, which means index 4 corresponds to 5, and option A is correct. For option B, the replace() method starts the replacement at index 2 and ends before index 4. This means two characters are replaced, and charAt(3) is called on the intermediate value of 1265. The character at index 3 is 5, making option B correct. Option C is similar, making the intermediate value 126 and returning 6.
Option D results in an exception since there is no character at index 5. Option E is incorrect. It does not compile because the parentheses for the length() method are missing. Finally, option F's replace results in the intermediate value 145. The character at index 2 is 5, so option F is correct.

======================答案=========================
A, C, F. Arrays are zero-indexed, making option A correct and option B incorrect. They are not able to change size, which is option C. The values can be changed, making option D incorrect. An array does not override equals(), so it uses object equality. Since two different objects are not equal, option F is correct, and options E and G are incorrect.

======================答案=========================
A. All of these lines compile. The min() and floor() methods return the same type passed in: int and double, respectively. The round() method returns a long when called with a double. Option A is correct since the code compiles.

======================答案=========================
E. A LocalDate does not have a time element. Therefore, there is no method to add hours, making option E the answer.

======================答案=========================
A, D, E. First, notice that the indent() call adds a blank space to the beginning of numbers, and stripLeading() immediately removes it. Therefore, these methods cancel each other out and have no effect. The substring() method has two forms. The first takes the index to start with and the index to stop immediately before. The second takes just the index to start with and goes to the end of the String. Remember that indexes are zero-based. The first call starts at index 1 and ends with index 2 since it needs to stop before index 3. This gives us option A. The second call starts at index 7 and ends in the same place, resulting in an empty String which is option E. This prints out a blank line. The final call starts at index 7 and goes to the end of the String finishing up with option D.

======================答案=========================
B. A String is immutable. Calling concat() returns a new String but does not change the original. A StringBuilder is mutable. Calling append() adds characters to the existing character sequence along with returning a reference to the same object. Therefore, option B is correct.

======================答案=========================
A, F. Option A correctly creates the current instant. Option F is also a proper conversion. Option B is incorrect because Instant, like many other date/time classes, does not have a public constructor and is instantiated via methods. Options C, D, and E are incorrect because the source object does not represent a point in time. Without a time zone, Java doesn't know what moment in time to use for the Instant.

======================答案=========================
C, E. Numbers sort before letters and uppercase sorts before lowercase. This makes option C one of the answers. The binarySearch() method looks at where a value would be inserted, which is before the second element for Pippa. It then negates it and subtracts one, which is option E.

======================答案=========================
A, B, G. There are 11 characters in base because there are two escape characters. The \n counts as one character representing a new line, and the \\ counts as one character representing a backslash. This makes option B one of the answers. The indent() method adds two characters to the beginning of each of the two lines of base. This gives us four additional characters. However, the method also normalizes by adding a new line to the end if it is missing. The extra character means we add five characters to the existing 11, which is option G. Finally, the translateEscapes() method turns any text escape characters into actual escape characters, making \\t into \t. This gets rid of one character, leaving us with 10 characters matching option A.

======================答案=========================
A, G. The substring() method includes the starting index but not the ending index. When called with 1 and 2, it returns a single-character String, making option A correct and option E incorrect. Calling substring() with 2 as both parameters is legal. It returns an empty String, making options B and F incorrect. Java does not allow the indexes to be specified in reverse order. Option G is correct because it throws a StringIndexOutOfBoundsException. Finally, option H is incorrect because it returns an empty String.


======================答案=========================
C, F. This question is tricky because it has several parts. First, you have to know that the text block on lines 13 and 14 is equivalent to a regular String. Since there is no line break at the end, this is four characters. Then, you have to know that String objects are immutable, which means the results of lines 17–19 are ignored. Finally, on line 20, something happens. We concatenate three new characters to s1 and now have a String of length 7, making option C correct.

======================答案=========================
A, B, D. The compare() method returns a positive integer when the arrays are different and the first is larger. This is the case for option A since the element at index 1 comes first alphabetically. It is not the case for option C because the s4 is longer or for option E because the arrays are the same.
The mismatch() method returns a positive integer when the arrays are different in a position index 1 or greater. This is the case for options B and D since the difference is at index 1. It is not the case for option F because there is no difference.


======================答案=========================
A, D. The dateTime1 object has a time of 1:30 per initialization. The dateTime2 object is an hour later. However, there is no 2:30 when springing ahead, setting the time to 3:30. Option A is correct because it is an hour later. Option D is also correct because the hour of the new time is 3. Option E is not correct because we have changed the time zone offset due to daylight saving time.

======================答案=========================
A, C. The reverse() method is the easiest way of reversing the characters in a StringBuilder; therefore, option A is correct. In option B, substring() returns a String, which is not stored anywhere. Option C uses method chaining. First, it creates the value "JavavaJ$". Then, it removes the first three characters, resulting in "avaJ$". Finally, it removes the last character, resulting in "avaJ". Option D throws an exception because you cannot delete the character after the last index. Remember that deleteCharAt() uses indexes that are zero-based, and length() counts the number of characters rather than the index.

======================答案=========================
A. The date starts out as April 30, 2022. Since dates are immutable and the plus methods' return values are ignored, the result is unchanged. Therefore, option A is correct.
相关文章:
OCP Java17 SE Developers 复习题04
答案 F. Line 5 does not compile. This question is checking to see whether you are paying attention to the types. numFish is an int, and 1 is an int. Therefore, we use numeric addition and get 5. The problem is that we cant store an int in a String variab…...
spark中使用flatmap报错:TypeError: ‘int‘ object is not subscriptable
1、背景描述 菜鸟笔者在运行下面代码时发生了报错: from pyspark import SparkContextsc SparkContext("local", "apple1012")rdd sc.parallelize([[1, 2], 3, [7, 5, 6]])rdd1 rdd.flatMap(lambda x: x) print(rdd1.collect())报错描述如…...
node.js知识系列(5)-每天了解一点
目录 21. RESTful API 设计中的 HTTP 动词22. 中间件链和回调地狱23. Express.js 的 ORM 经验24. 错误处理中间件和 HTTP 状态码25. 事件循环(Event Loop)在异步编程中的作用26. Node.js 缓存机制27. Node.js 全局对象28. 性能分析和调优经验29. Express…...
Linux服务器(银河麒麟、CentOS 7+、CentOS 7+ 等)修改IP地址
打开终端或控制台,以root或具有sudo权限的用户身份登录。根据你的Linux发行版和网络管理工具的不同,相应的命令可能略有不同。使用以下命令编辑网络配置文件,例如eth0网卡的配置文件: 注意:ifcfg-eth0 可能会有不同的命…...
Mall脚手架总结(四) —— SpringBoot整合RabbitMQ实现超时订单处理
前言 在电商项目中,订单因为某种特殊情况被取消或者超时未支付都是比较常规的用户行为,而实现该功能我们就要借助消息中间件来为我们维护这么一个消息队列。在mall脚手架中选择了RabbitMQ消息中间件,接下来荔枝就会根据功能需求来梳理一下超时…...
python实现图像的直方图均衡化
直方图均衡化是一种用于增强图像对比度的图像处理技术。它通过重新分配图像中的像素值,使得图像的像素值分布更加均匀,增强图像的对比度,从而改善图像的视觉效果。 直方图均衡化的过程如下: 灰度转换:如果图像是彩色…...
哪种烧录单片机的方法合适?
哪种烧录单片机的方法合适? 首先,让我们来探讨一下单片机烧录的方式。虽然单片机烧录程序的具体方法会因为单片机型号、然后很多小伙伴私我想要嵌入式资料,通宵总结整理后,我十年的经验和入门到高级的学习资料,只需一…...
安规电容总结
安规电容 顾名思义:电容即使失效后,也不会漏电或者放电伤人,要符合安全规定 多数高压认证产品都需要。 上图: X电容: Y电容: 区别: 电路示意:...
MyCat分片垂直拆分
场景 在业务系统中 , 涉及以下表结构 , 但是由于用户与订单每天都会产生大量的数据 , 单台服务器的数据 存储及处理能力是有限的 , 可以对数据库表进行拆分 , 原有的数据库表如下。 现在考虑将其进行垂直分库操作,将商品相关的表拆分到一个数据库服务器&#…...
MongoDB bin目录没有mongo.exe命令
MongoDB从6.0版本开始就取消了在Bin目录中加入Compass连接工具,需要大家自行安装。 可以定位到我的文章 链接地址 点击右侧目录的 标题三:MongoDB Compass连接MongoDBMongoDB Compass的安装方法哦~...
Zookeeper分布式一致性协议ZAB源码剖析
文章目录 1、ZAB协议介绍2、消息广播 1、ZAB协议介绍 ZAB 协议全称:Zookeeper Atomic Broadcast(Zookeeper 原子广播协议)。 Zookeeper 是一个为分布式应用提供高效且可靠的分布式协调服务。在解决分布式一致性方面,Zookeeper 并…...
微软 AR 眼镜新专利:包含热拔插电池
近日,微软在增强现实(AR)领域进行深入的研究,并申请了一项有关于“热插拔电池”的专利。该专利于2023年10月5日发布,描述了一款采用模块化设计的AR眼镜,其热插拔电池放置在镜腿部分,可以直接替代…...
软件TFN 2K的分布式拒绝攻击(DDos)实战详解
写在前头 本人写这篇博客的目的,并不是我想成为黑客或者鼓励大家做损坏任何人安全和利益的事情。因科研需要,我学习软件TFN 2K的分布式拒绝攻击,只是分享自己的学习过程和经历,有助于大家更好的关注到网络安全及网络维护上。 需要…...
计算机网络第四章——网络层(末)
赌书消得泼茶香当时只道是寻常 文章目录 概述:组播机制是让源计算机一次发送的单个分组可以抵达用一个组地址标识的若干目标主机,并被它们正确接收,组播仅应用于UDP 因特网中的IP组播也使用组播组的概念,每个组都有一个特别分配的…...
Newman基本使用
目录 简介 安装 使用 官网 运行 输出测试报告文件 htmlextra 使用 简介 Newman 是 Postman 推出的一个 nodejs 库,直接来说就是 Postman 的json文件可以在命令行执行的插件。 Newman 可以方便地运行和测试集合,并用之构造接口自动化测试和持续集成…...
左值引用右值引用
文章目录 左值和右值什么是左值什么是右值左值引用与右值引用的比较左值引用总结右值引用的总结: 右值引用使用场景和意义左值引用的使用场景左值引用的短板 右值引用和移动语义解决上面的问题不仅仅有移动构造还有移动赋值 右值引用引用左值及其一些更深入的使用场…...
学习开发一个RISC-V上的操作系统(汪辰老师) — 一次RV32I加法指令的反汇编
前言 (1)此系列文章是跟着汪辰老师的RISC-V课程所记录的学习笔记。 (2)该课程相关代码gitee链接; (3)PLCT实验室实习生长期招聘:招聘信息链接 前置知识 RISC-V 汇编指令编码格式 &a…...
IDEA中点击New没有Java Class
解决办法:右键src,也可以是其他文件名,点击Mark Directory as 点击Sources Root即可...
打造炫酷效果:用Java优雅地制作Excel迷你图
摘要:本文由葡萄城技术团队原创并首发。转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。 前言 迷你图是一种简洁而有效的数据可视化方式,常用于展示趋势和变化。它通常由一…...
pycharm设置pyuic和pyrcc
pyuic设置 适合任何虚拟环境,直接用虚拟环境的python解决一切。。。 E:\anaconda3\envs\qt5\python.exe-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py$FileDir$pyrcc设置 E:\anaconda3\envs\qt5\python.exe-m PyQt5.pyrcc_main $FileName$ -o…...
IEEE期刊分区大洗牌:2025年这些1区期刊跌到2区,你的论文还值钱吗?
IEEE期刊分区洗牌:科研价值锚点迁移下的理性应对指南 又到了年底,对于很多科研工作者,尤其是计算机、电子、通信等领域的学者和研究生来说,除了年终总结,还有一件牵动神经的大事——中科院期刊分区表的更新。这几天&am…...
UI-TARS-desktop快速上手:无需代码实现浏览器自动化控制
UI-TARS-desktop快速上手:无需代码实现浏览器自动化控制 你是不是也厌倦了每天在浏览器里重复那些枯燥的点击、复制、粘贴操作?比如每天都要登录后台查看数据,或者在不同网站间来回切换收集信息。这些工作不仅耗时,还容易出错。 …...
HanLP 2.x 多任务模型实战:从安装到文本分析全流程
1. 为什么你需要HanLP 2.x的多任务模型? 如果你正在处理中文文本,比如想从一堆新闻里自动提取关键信息,或者给你的聊天机器人加上理解用户意图的能力,那你很可能需要一套好用的自然语言处理(NLP)工具。几年…...
Verilog实战:从零构建四种关键触发器
1. 触发器:数字世界的记忆细胞 如果你刚开始接触FPGA和数字电路设计,可能会觉得“触发器”这个词听起来有点抽象,甚至有点吓人。别担心,让我用一个最简单的比喻来解释:触发器就是数字电路里的“记忆细胞”。就像我们的…...
3D打印耗材干燥系统:闭环温控硬件设计与PID实现
1. 项目概述3D打印耗材受潮是影响打印质量的典型问题。当PLA、ABS或PETG等聚合物材料吸收环境水分后,其熔融流动性发生改变,在挤出过程中易产生气泡、拉丝、层间结合力下降及表面粗糙等缺陷。传统干燥方案多依赖密封箱体配合硅胶干燥剂,该方法…...
Allwinner V3s 最小系统硬件设计与裸机启动实践
1. 项目概述Allwinner V3s 是一款面向嵌入式视觉与边缘计算场景的高集成度 SoC,由全志科技于2017年前后推出。本项目以 V3s 为核心构建最小可行硬件平台,聚焦于裸机启动、Linux 系统引导及基础外设驱动验证,目标是为开发者提供可复现、可调试…...
Qwen3-ASR-0.6B在金融领域的应用:电话客服质检系统
Qwen3-ASR-0.6B在金融领域的应用:电话客服质检系统 1. 引言 金融行业的电话客服每天要处理大量客户来电,从简单的账户查询到复杂的投资咨询,每个通话都代表着客户对金融机构的信任。传统的客服质检方式往往依赖人工抽查,不仅效率…...
西门子罗宾康A5E31418305
孙13665068812西门子罗宾康A5E31418305产品介绍西门子罗宾康(Robicon)A5E31418305是一款高性能工业变频器驱动模块,属于西门子旗下罗宾康品牌的中压变频器产品线。该型号广泛应用于电力、石化、冶金、矿山等工业领域,以其卓越的可…...
利用快马平台与mcp协议快速搭建你的第一个ai智能体原型
最近在尝试快速搭建AI智能体原型时,我接触到了一个挺有意思的概念——MCP(模型上下文协议)。简单来说,它就像给不同的AI模型和外部工具之间制定了一套“普通话”,让它们能顺畅沟通。为了验证这个想法,我决定…...
PTA 树与二叉树 2 根据先序+中序遍历序列构造二叉树
作者 张鏖烽单位 湖南工程学院计算机与通信学院从键盘输入一个二叉树的先序遍历序列和中序遍历序列,编程实现下列函数:(1)CreateBT_PI(pre,in,n):根据先序遍历序列*pre和中序遍历*in构造二叉链树;(2&#x…...
