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、由高到低时,可能存在溢出或精度问题

 

posted @   默默无闻的爬行者  阅读(1418)  评论(0编辑  收藏  举报
编辑推荐:
· 从 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生成工具
点击右上角即可分享
微信分享提示