程序设计语言基础入门【笔记】
程序设计语言基础入门【笔记】
程序设计语言类型方面
从类型检查方面来说
编译时,有c,c++,java,go等语言
运行时,有python,Perl,JavaScript,ruby等
从运行/编译方面来说
编译为机器代码运行:c,c++等
编译为中间代码,在虚拟机上运行:java,c#等
解释执行:python,Perl,JavaScript等
从编程范式方面来说
面向过程:c,visual basic等
面向对象:java,c#,c++,Scala等
函数式:Haskell,erlang等
数据类型(java)
在java中,有很多数据类型,比如Boolean,byte,char(两字节),short,int(32位),long(64位),float,double,还有object派生下来的string,enum,array,使用起来是有些不同的
32位int的取值范围为-231到231-1,使用直观的没法判断+0和-0的情况,因此可以使用补码的方法,补码为原码取反加一,这样就可以发现对于32位来说,第一位为符号位,-0就变成了-2^31
浮点数和定点数
浮点数的结构是符号位\指数部分\基数部分
像是java中的double,范围为+/- 10308,但是64位的double精度只有1015,后面的两百九十多位都不能保证精度
所以浮点数的比较是很麻烦的,首先a==b是不对的,math.abs(a-b)<eps也不太行,不是万无一失的
使用bigdecimal算钱的时候,最好不要使用浮点数,使用定点数比较好
java数据类型
装箱拆箱的操作
第三个可能相等也可能不相等,因为在数据小的时候会分配同一个箱子,但是在数据大的时候,就会分配不一样的
您能读到这儿,我呢是发自真心的感谢您,若要转载,还望请您带上链接
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!