课后作业小结

news/2025/9/27 23:23:19/文章来源:https://www.cnblogs.com/bdzb666/p/19115899

Java学习动手问题整理

最近跟着老师学Java基础,遇到了不少需要动手验证的小问题,整理了几个印象深的,记录下我的思考和结果,方便以后复习。

一、枚举类型怎么用?

老师让看EnumTest.java,我自己写了个简单例子试了试:

// 定义枚举类型
enum Size {SMALL, MEDIUM, LARGE}
public class EnumTest {public static void main(String[] args) {Size s1 = Size.SMALL;Size s2 = Size.valueOf("SMALL");// 比较两个枚举值System.out.println(s1 == s2); // 输出true// 遍历所有枚举值for (Size size : Size.values()) {System.out.println(size);}}
}

运行后发现,相同的枚举值其实是同一个对象,用“==”就能比较。而且还能通过values()方法遍历所有枚举选项,这点还挺方便的。

二、double计算为啥不精确?

老师给的TestDouble.java代码,运行结果跟我想的不一样:

public class TestDouble {public static void main(String[] args) {System.out.println(0.05 + 0.01); // 结果是0.060000000000000005System.out.println(1.0 - 0.42); // 结果是0.5800000000000001}
}

查了资料才明白,double用二进制存储,有些十进制小数没法精确表示,只能存近似值。后来用BigDecimal解决了,要注意用字符串当参数:

import java.math.BigDecimal;
public class TestBigDecimal {public static void main(String[] args) {BigDecimal a = new BigDecimal("0.05");BigDecimal b = new BigDecimal("0.01");System.out.println(a.add(b)); // 正确输出0.06}
}

三、字符串拼接的小陷阱

下面两段代码,一开始以为结果差不多,实际差很多:

public class StringAddTest {public static void main(String[] args) {int x = 100, y = 200;System.out.println("x+y=" + x + y); // 输出x+y=100200System.out.println(x + y + "=x+y"); // 输出300=x+y}
}

琢磨了半天,原来“+”遇到字符串就会变成连接操作,而且是从左往右算。第一段先把“x+y=”和x连起来,再连y;第二段先算x+y的和,再跟字符串连接,难怪结果不一样。

四、同名变量谁生效?

看到一段代码,里面有两个叫value的变量:

public class VariableTest {private static int value = 1;public static void main(String[] args) {int value = 2;System.out.println(value); // 输出2}
}

运行后输出2,不是1。原来局部变量会“盖住”外面的变量,要是想访问外面的,得用特殊方式,比如静态变量用类名,成员变量用this(不过这个例子里是静态的,暂时还没完全搞懂this的用法,后续再学)。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自己怎么给网站做优化广元市网站建设

Open Images Dataset https://www.youtube.com/watch?vdLSFX6Jq-F0

课后3

import java.util.Random; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String yanzhengma = generateyanzhengma(); Syste…

尝试决定

焦虑迷茫这么久,还是打算转前端 同时尝试投简历!

竞赛第一步----进实验室

今天我成功进入了学校的计算机应用实验室,向我的竞赛梦想前进了一步,说实话今天的机试让我充分地意识到自己的不足,做的代码题目还是太少了,今后还需继续努力,加油!!!

Java语法基础课程动手动脑与实验问题深度解析

在Java语法基础的学习旅程中,动手实践与问题探究从来都不是可有可无的环节,而是将枯燥的理论知识转化为实用应用能力的关键桥梁。课程里那些围绕枚举类型、变量作用域、数据类型转换、字符串拼接和位运算展开的动手动…

杭州制作企业公司网站可信赖的网站建设公司

01 早年独孤混群。 刚开始只会发自己的副业项目资料。 资料里面全是钩子。 所以被群主踢了。 刚开始很生气,后来发现自己的社群也有人打广告。 才慢慢理解那种感受。 随后混的群,都是以价值分享和副业心得为主。 给社群的其他小伙伴,…

lc1038-从二叉搜索树到更大和树

难度:中等(初期)题目描述给定一棵BST,给每个节点都加上大于自身数值的节点的值示例 输入:[4,1,6,0,2,5,7,null,null,null,3,null,null,null,8] 输出:[30,36,21,36,35,26,15,null,null,null,33,null,null,null,8]…

课程中的问题

课程中的问题1.设计程序实现不同数据类型的强制转换避免精度丢失 2.生成验证码如何生成随机数 3.如何将一个完整的程序拆分成不同的部分进行高效的实现 4.提升代码效率

课程中的所有动手动脑的问题以及课后实验性的问题

课程中的所有动手动脑的问题以及课后实验性的问题审核稿件方法reviewManuscript ( ) (1)显示审核稿件子界面reviewFrame();(2)判断该稿件编号是否存在judgeManuscript ( ) 。(3)如果库中不存在该稿件信息,则…

网站开发技术报告模板网络营销有哪些模式

简介:如何帮助金融客户“用好云”?做「政企数智创新的同行者」,这对于阿里云混合云来说不仅仅是一句口号,更是在千行百业践行的行动指南。 “我一秒钟几千万上下,会跟你们吃杂碎面?” 这句出自星爷电影台…

网站设计网页的优缺点页面设计翻译

引言 在BERT的预训练阶段,需要对数据集进行特定的处理,以生成适用于 Masked Language Modeling(MLM)和 Next Sentence Prediction(NSP)任务的数据。以下是详细的步骤和方法: 1. 原始文本数据的准备 首先,需要收集大量的无标签纯文本数据,例如: 1.维基百科:涵盖广泛主…

大一网站开发项目答辩WordPress主题文本

1. 前言 如图1所示,R14是连接寄存器(Link Register),在汇编指令中通常也写为LR,用于存储函数调用和异常等的返回信息,复位时,默认值为0xFFFFFFFF; 图1 Core register R15是程序计数…

专业做食材网站浏阳做网站

启动Python有两种方式,分别为“Windows命令行窗口”和“IDLE” “命令行窗口”下可以通过如下两种方法: 1. import subprocess subprocess.call("clear") # linux/mac subprocess.call("cls", shellTrue) # windows 执行完次命令后&…

New_Sort_Integer_Sequential解析

New_Sort_Integer_Sequential解析import java.util.ArrayList; public class New_Sort_Integer_Sequential { static void sort(ArrayList<Integer> list, Integer left, Integer right) { if (right <= left…

课后2

使用double没得出精准答案第一个由于前面有加号,第一个是字符串,不进行计算,第二个先计算后面是字符串。 import java.util.Random; public class MathProblemGenerator { public static void main(String[] args) …

Java语法基础课程“动手动脑”问题与实验整理

Java语法基础课程“动手动脑”问题与实验整理 一、编程思维与项目分解相关愚公移山故事与编程逻辑关联思考 通过愚公移山故事,清晰感知到编程核心逻辑与现实问题解决的共通性:“虽我之死,有子存焉”对应分支结构(I…

课后感想

系统学习模块分解后,我实现了编程思维的进阶,跳出 “堆砌代码” 的局限,深刻理解其在软件开发中的核心价值。​ 此前写代码常陷入 “一锅粥” 困境:如简单图书管理系统的登录、查询、借阅功能全挤在主程序,新增 “…

php 公司网站百度关键词排名代发

全国PMO专业人士年度盛会 天阳科技集团北京卡洛其项目管理专家李先林先生受邀为PMO评论主办的2024第十三届中国PMO大会演讲嘉宾&#xff0c;演讲议题为“应用软件项目管理标准化实践探讨”。大会将于6月29-30日在北京举办&#xff0c;敬请关注&#xff01; 议题简要&#xff1…

交换友情链接平台鞍山做网站优化公司

指针 指针概念 指针保存地址&#xff0c;地址是字节的编号 指针类型和保存的地址类型要一直 使用时注意&#xff0c;把地址转换为&变量的格式来看 int a[3]; a转为&a[0] 指针的大小 64bit 固定8字节&#xff0c; 32bit 固定4字节 指针…