当前位置: 首页 > news >正文

9.28作业

结果:
false
false
true
SMALL
MEDIUM
原因:枚举是特殊的类,他的每一个枚举值都是类的实例,LARGE两者指向不同内存地址,因此结果为 false 。isPrimitive() 用于判断是否为原始类型,因此结果为 false 。
结论:枚举的核心特性为单例性和可遍历性
2.

结论:这其实并不意外,因为在计算机中,浮点数(如 double 类型)是采用二进制来表示的。而有些十进制的小数,在转换为二进制时,是无法精确表示的。当进行浮点数运算时,这些微小的不精确就会累积,从而导致最终结果出现微小的误差,就像代码中 0.05 + 0.01 和 1.0 - 0.42 的结果并非我们直观预期的 0.06 和 0.58 ,而是带有微小偏差的值;而 4.015 * 100 和 123.3 / 100 能得到相对精确的结果,是因为这些运算对应的二进制表示在计算时误差没有体现出来或者可忽略。
代码:import java.math.BigDecimal;

public class TestBigDecimal {
public static void main(String args[]) {

    BigDecimal bd05 = new BigDecimal("0.05");BigDecimal bd01 = new BigDecimal("0.01");System.out.println("0.05 + 0.01 = " + bd05.add(bd01));BigDecimal bd10 = new BigDecimal("1.0");BigDecimal bd42 = new BigDecimal("0.42");System.out.println("1.0 - 0.42 = " + bd10.subtract(bd42));BigDecimal bd4015 = new BigDecimal("4.015");BigDecimal bd100 = new BigDecimal("100");System.out.println("4.015 * 100 = " + bd4015.multiply(bd100));BigDecimal bd1233 = new BigDecimal("123.3");System.out.println("123.3 / 100 = " + bd1233.divide(bd100));
}

}
上述代码可解决精度问题
应用了字符串来初始化数组
3.
输出结果:
第一行输出: X+Y=100200
第二行输出: 300=X+Y
原因:在 Java 中, + 运算符在字符串拼接和数值运算时的行为不同,具体取决于操作数的类型:对于 System.out.println("X+Y="+X+Y); :字符串 "X+Y=" 是字符串类型,当它与后面的 X ( int 类型,值为 100 )进行 + 运算时,会触发字符串拼接操作,先将 X 转换为字符串 "100" ,得到 "X+Y=100" 。接着,这个新的字符串再与 Y ( int 类型,值为 200 )进行 + 运算,再次触发字符串拼接,将 Y 转换为字符串 "200" ,最终拼接成 "X+Y=100200" 。对于 System.out.println(X+Y+"=X+Y"); :
首先计算 X + Y , X 和 Y 都是 int 类型,所以这里是数值相加, 100 + 200 = 300 。得到结果 300 ( int 类型)后,再与字符串 "=X+Y" 进行 + 运算,此时触发字符串拼接,将 300 转换为字符串 "300" ,然后与 "=X+Y" 拼接,得到 "300=X+Y" 。
结论: + 运算符中,若有一个操作数是字符串,则进行字符串拼接;若操作数都是数值类型,则进行数值运算,运算顺序会影响最终结果。

http://www.hskmm.com/?act=detail&tid=19593

相关文章:

  • 2025.9.28+7[未完]
  • 无需登录即可在管理员页面发现XSS漏洞的技术解析
  • 【操作系统】函数调用
  • 岐金兰与AI元人文概念的深度关联研究:从理论构想到实践应用
  • 维生素D,毛姆,我,还有停滞的3年
  • “一键并行搜索”的本地导航页实现
  • 常见NAS文件传输协议中SMB、FTP、NFS、 rsync、WebDAV服务各有何区别?
  • cgroup 使用
  • 在Java中原码反码补码的区别
  • 苍穹外卖-day02(新增员工,员工分页查询,启用禁用员工账号,编辑员工,导入分类模块功能代码) - a
  • 问题
  • 智慧决策的透明化路径:空白金兰契架构下的悟空备案制研究
  • 使用 preact 渲染组件到任何元素
  • 《ZeroTier教程》03-客户端配置 zerotier-cli常用命令 桥接和路由配置示例
  • XDG和桌面环境
  • JAVA 语法基础课程动手动脑及课后实验问题整理文档
  • python垃圾回收
  • Arduino IDE 离线更新ESP-32 lib包
  • CUDA编程(CUDA_By_Example笔记)
  • K8S部署Openwebui 服务(Nvidia版)
  • 传统AI对话:悟空也辛苦(ai元人文)
  • 理解大语言模型中的 Token
  • 软件工程第一次团队作业
  • 实验1作业
  • 苍穹外卖-day01(软件开发整体介绍,苍穹外卖项目介绍,开发环境搭建,导入接口文档,Swagger) - a
  • 9.27动手动脑及课后实验
  • idea必备插件
  • 新学期每日总结(第6天)
  • 第六天
  • Combinatorics