基本类型转换

  1. 自动类型转换
  2. 强制类型转换

自动类型转换

转换从低级到高级

byte,short,char—> int —> long—> float —> double

数据类型转换必须满足如下规则:

  1. 不能对boolean类型进行类型转换
  2. 不能把对象类型转换成不相关类的对象
  3. 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。
  4. 转换过程中可能导致溢出或损失精度
  5. 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入
public class Test { public static void main(String[] args) { //byte 自动转换成 short byte abyte = 10; short ashort = abyte; System.out.println(ashort); //short 自动转换成 int short ashort2 = 180; int aint = ashort2; System.out.println(aint); //int 自动转换成 long int aint2 = 100; long along = aint2; System.out.println(along); //long 自动转换成 float long along2 = 100; float afloat = along2; System.out.println(afloat); //float 自动转换成 double float afloat2 = 100.00F; double adouble = afloat2; System.out.println(adouble); }}//输出结果:10180100100.0100.0

强制类型转换

转换从高级到低级

byte,short,char

public class Test2 { public static void main(String[] args) { //double 强制转换成 float double adouble = 180.12D; float afloat = (float) adouble; System.out.println(afloat); //float 强制转换成 long float afloat2 = 180.12f; long along = (long) afloat2; System.out.println(along); //long 强制转换成 int long along2 = 180; int aint = (int) along2; System.out.println(aint); //int 强制转换成 short int aint2 = 180; short ashort = (short) aint2; System.out.println(ashort); //short 强制转换成 byte short ashort2 = 180; byte abyte = (byte) ashort2; System.out.println(abyte); }}//输出结果:180.12180180180-76

由上述内容可知,强制类型转换有精度的损失。

//分析byte abyte = (byte) ashort2;精度损失的过程short ashort2 = 180;二进制位 0000 0000 1011 0100 short类型转换成byte类型精度损失变成8位 原码: 1011 0100反码: 1100 1011补码: 1100 1100再由二进制转换成十进制为-76

备注:计算中使用的都是补码。正数的补码和原码一样;负数的补码是负数的反码加1。

境界有大小,不以是而分优劣。“细雨鱼儿出,微风燕子斜”,何遽不若“落日照大旗,马鸣风萧萧”?“宝帘闲挂小银钩”,何遽不若“雾失楼台,月迷津渡”也。——王国维

byte 类型_java知识总结(九):基本类型转换相关推荐

  1. int类型和byte类型的强制类型转换

    今天在读<Java网络编程>这本书的第二章 流 时,看到书中有一个地方关于int强制转换为byte类型时应注意的地方.这个地方有点细节,不过就应该把这种细节把握住. 情况是这样的,讲到In ...

  2. byte 类型比较_Java Grammar:数据类型

    Java中的基础数据类型 Java的数据类型 我们知道,Java是一种强类型语言,类型对于Java语言来说非常的重要不言而喻,在Java中,分为基础数据类型和引用数据类型,其中基础数据类型分为了四类八 ...

  3. Java中的byte类型是有符号的吗_JAVA中byte类型的介绍。 谢谢

    展开全部 Java也提供62616964757a686964616fe59b9ee7ad9431333431366265了一个byte数据类型,并且是基本类型.java byte是做为最小的数字来处理 ...

  4. java 基本变量类型_Java自学-基本变量类型

    Java中的基本变量类型 一个变量的类型,决定了该变量可以包含什么样的值. Java中有八种基本类型,都是Java语言预先定义好的,并且是关键字. 这八种基本类型分别是: 整型 (4种) 字符型 (1 ...

  5. java 无符号 类型_java中符号类型和无符号类型的问题分析

    一 参考博文 二 java中的无符号数和有符号数 在计算机中,可以区分正负的类型,称为有符号类型,无正负的类型,称为无符号类型. 使用二进制中的最高位表示正负 计算机中用补码表示数值:另外,用二进制的 ...

  6. 簇的局部变量中布尔类型_java基础2(变量、常量、数据类型)

    一.注释 (1)什么是注释?解释说明的文字(注释的内容不会被编译) (2)注释的作用 ①对代码的解释说明 ②便于后期维护 (3)注释的分类: ①单行注释 //单行注释 作用域:只在当前行有效 嵌套:可 ...

  7. java中类型转换的造型_Java总结篇系列:类型转换/造型

    Java中,经常可以遇到类型转换的场景,从变量的定义到复制.数值变量的计算到方法的参数传递.基类与派生类间的造型等,随处可见类型转换的身影.Java中的类型转换在Java编码中具有重要的作用. 首先, ...

  8. java 自动类型_java类型自动转换

    package com.kevin.basic; /* * java类型自动转换方面的知识点 * int类型 double类型 默认类型 */ public class Test { /** * @p ...

  9. java初级联系_Java基础练习1(数据类型转换)

    1.下列代码的输出结果是:()(单选) public static voidmain(String[] args){double money = 3.0; money-= 2.9; System.ou ...

最新文章

  1. 【quickhybrid】架构一个Hybrid框架
  2. 关于Gitlab若干权限问题
  3. 进程间通信 - 匿名管道实现
  4. python提取cad坐标到excel_使用python来操作autocad,并且将坐标点转换成cad可见对象...
  5. oracle执行runstats,oracle runstats工具
  6. MFC实现Windows锁屏
  7. 实现一个Golang的reverse函数
  8. php移除所有子节点,jQuery删除/清空指定元素下的所有子节点的方法
  9. ib_logfile和mysql_bin_mysql的innodb中事务日志ib_logfile
  10. 使用 .NET 平台,如何玩转 Universal Windows 应用?
  11. 利用【监听器】动态加载Log4j配置文件
  12. 统计学附录,F分布和t分布表
  13. Eclipse ADT安装慢解决方法
  14. 〖Python 数据库开发实战 - MySQL篇⑤〗- 为大家推荐几款经典的数据库可视化工具
  15. hadoop基础【Shuffle全部流程、OutputFormat输出、ReduceJoin案例实操】
  16. SAP License:SAP系统备料发货时的流程规范
  17. 淡季来临,淘宝新开店铺该如何是好
  18. 电脑PC端微信提示:你的微信崩溃次数较多,建议使用最新版本
  19. 后端人眼中的Vue(五)
  20. 负数时的有符号整型和无符号整型的转换

热门文章

  1. Python编程常见出错信息及原因分析(2)
  2. 使用jQuery时报错:$未被定义
  3. cup first world_LOONCUP – The world's first SMART menstrual cup.
  4. python的循环控制_控制for循环(python)
  5. ipv4改完保存不成功_win7系统没法保存修改后IP地址的解决方法
  6. python多线程控制暂停_python多线程控制
  7. matlab 经济计量工具箱,matlab计量经济学
  8. 最大频偏和最大相位偏移_振荡器的相位噪声模型
  9. python ssh模块stdout.read 和recv_paramiko SSH 模块简单应用。
  10. mysql命令行操作大全_mysql命令行操作大全 mysql命令行操作总结