第二天,Java基础语法
上一博客其实是对自己前几天学习的总结,而这一篇是对今天学习的梳理。
今天学习的内容是Java基础语法,Java基础语法在很多地方与C相似。这对我来说是个好消息,毕竟我有C的基础。
1.首先是注释,注释分为三大类,单行注释,多行注释和C一样,分别是//和/**/。文档注释和JavaDoc有关,不过今天还没有学懂JavaDoc,明天要把JavaDoc给补上。写注释是非常重要的,他可以增强代码的可读性,这对自己读写代码并且团队协作中起着非常重要的作用。
2.标识符和关键字:和C类似,Java的标识符必须以字母,美元符或者下划线来开始,首字符之后则可以使用除上述三者之外的数字。标识符是大小写敏感的。可以使用中文命名但一般不使用。
3.数据类型分为基本数据类型和引用数据类型,今天以学习基本数据类型为主。基本数据类型又分为数值类型和boolean类型,数值类型又分为整数类型,浮点类型和字符类型。整数类型分为byte,short,int,long。他们分别占1,2,4,8和字节范围。浮点类型又分为float和double类型,他们分别占4个字节和8个字节。字符类型char占两个字节。Java的char类型和C的char类型相似,可以类比使用。boolean类型只占一个位,且只有true和false两个。引用数据类型暂时放到后面的学习中。
4.数据类型的拓展:整数可以通过在其前方加0或0x来表示其为八进制或十六进制。浮点数之间存在舍入误差,所以就最好完全避免使用浮点数进行比较。char的本质还是数字,用Unicode编码。布尔值拓展。
类型转换:由低转高需要强制转换,由低到高自动转换。不能对boolean值转换1.
public class Helloworld {
public static void main(String[] args) {
int money=10_0000_0000;
short years=20;
long total=money*years;
System.out.println(total);
}
}
此时输出-1474836480,因为在向total赋值之前money*years已经超过了int的范围产生了问题。
public class Helloworld {
public static void main(String[] args) {
int money=10_0000_0000;
short years=20;
long total=money*((long)years);
System.out.println(total);
}
}
将years强制转换成long类型即可防止溢出输出为 20000000000
内容有些多,明天继续总结。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构