java数据类型及其转换规则
一基本类型
java基本类型分为8种,分别为byte,short,int,long,float,double,char,boolean,除boolean外,其他类型都可以进行相互转换。
二。转换原则
1、宽转换(自动类型转换或隐式转换):
自动转化:数据类型可以自动从低精度—>高精度。(即为由整数到分数)(byte<short<char<int<long<float<double)
(1):byte可以直接转换到short、int、long、float、double。
(2):short可以直接转换到int、long、float、double。
(3):char可以直接转换到int、long、float、double。
(4):int可以直接转换到long、float、double。
(5):long可以直接转换到float、double。
(6):float可以直接转换到double
注:int转换为float,long转换为double,可能造成精度丢失
byte,short,int都是有符号的整数,进行宽转换时要进行符号位的扩展。例如:int i= (char)
2、窄转换
(1):double可以直接转换到byte、short、char、int、long、float。
(2):float可以直接转换到byte、short、char、int、long。
(3):long可以直接转换到byte、short、char、int。
(4):int可以直接转换到byte、short、char。
(5):char可以直接转换到byte、short。
(6):short可以直接转换到byte、char
注:极大可能会丢失信息
3、宽窄同时转换
宽窄同时转换发生在byte转换到char期间。转换过程为:先将byte宽转换到int,再将int转换到char
注意:1、不能对布尔值进行转换
2、不能把对象类型转化为不相干的类型
3、把高容量转化为低容量时,强制转换
4、由高到低时,可能存在溢出或精度问题
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具