首页 > 编程语言 >java基本数据类型转换规则

java基本数据类型转换规则

时间:2022-11-06 14:57:37浏览次数:40  
标签:java int 数据类型 转化 -- byte 取值 转换规则

数据类型的转换是保证数据精确度的一种手段。

  • 2个基本事实
  • 自动转化
  • 强制转化
  • 编译器的优化

2个基本事实事实
-** 浮点数常量默认为double**
float a=3.5;// 此处将会由doube-->float造成数据丢失

自动转化
转化原则:数据类型的取值范围小的自动转化为数据类型取值大的,大的转化为小的需要强制转化
特例:char 和short,char 和byte之间都不能进行相互转化


byte a=4;
int b=a;//byte-->int 大-->小 自动转化

强制转化
1.int a=5;
byte b=(byte)a;//int-->byte 小-->大 强制转化 a的值小于b的取值范围 不会出现数据损失
2.int a=129
byte b=(byte)a//该处和上面一样 但129超出了byte的取值范围 会出现数据损失

编译器的优化处理
当byte char short或者他们与整形常量之间之间的任意2个进行计算时,编译器为了保证其得到的结果不溢出,会将其计算答案转化成int数据类型


该处容易被认为了常量默认为int byte和int计算byte转为int 最后答案为int 这样理解不对

只有将其整体转化才行

这样才不会报错

标签:java,int,数据类型,转化,--,byte,取值,转换规则
From: https://www.cnblogs.com/swtaa/p/16862587.html

相关文章

  • 主界面(零基础适合小白)基础javaweb前端项目实战【包含增删改查,mysql】二
    首先编写sp文件(index.jsp)<%@pagecontentType="text/html;charset=UTF-8"language="java"%><html><head><title>主界面</title></head><body><br>......
  • C/C++中的枚举数据类型
    关键字:Emum自定义名称{a=1b=2,c=3,d=4}box;定义好之后可以直接通过box关键字调用ennumbag{book1="百年孤独",book2="时间简史",book3="简爱"}boo......
  • javascript的基础语法,方便未来开展学习
    文档内部输入语句:document.write(‘窗口打印内容’)输出到控制台,目的让程序员测试使用consloe.log(’控制台打印‘)警示框,提示给用户看alert(’警示打印‘)也就是弹出框输......
  • JavaIO流笔记
    一、什么是文件?  文件是我们保存数据的地方。二、文件的创建  (1)newFile(Stringpathname)//根据路径构建一个File对象1importjava.io.File;2importj......
  • Java学习笔记2-入门
    java入门java三大版本JDK、JRE、JVM安装开发环境HelloWorld新建文件夹存放代码新建Java文件文件后缀为.javaHello.java【注意】系统可能没有现实文件后缀......
  • Java学习笔记1-计算机基础
    计算机冯诺依曼结构快捷键Dos命令开始+系统+命令提示符Win+R输入cmd打开控制台在任意文件夹下,按住shift+鼠标右键点击,在此处打开命令行窗口资源管理器的......
  • java记录
    java记录java包package相同包中的类名不能重复,不同包中的类名可以重复包声明唯一,且位于第一行import关键字import可以有多行用于导入某一个类导入某个包里的所......
  • Java8新特性:函数式编程
    1.概述函数式编程学习目的:能够看懂公司里的代码大数据量下处理集合效率更高代码可读性高消灭嵌套地狱函数式编程思想:面向对象思想需要关注用什么对象完成什么事......
  • js 数据类型 Symbol
    唯一的标识符有两种原始类型可以作为对象的键(key):1、字符串,2、Symbol()。用法:Symbol('描述')创建Symbol类型值Symbol.description获取Symbol描述letid=Symbo......
  • 深入理解Java内存区域(最新版面试题)
    1、什么是JVM?JVM(JavaVirtualMachine)是用于运行Java字节码的虚拟机,包括一套字节码指令集、一组程序寄存器、一个虚拟机栈、一个虚拟机堆、一个方法区和一个垃圾回收器。JVM......