前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基本数据类型转化

基本数据类型转化

作者头像
用户4585225
修改2020-12-18 11:07:05
6400
修改2020-12-18 11:07:05
举报
文章被收录于专栏:用户4585225的专栏

基本类型转换

一、数据类型

数据类型包括基本数据类型和引用数据类型。

1、基本数据类型有四大类八小种

  • 整型:byte(1字节)、short(2字节)、int(4字节)、long(8字节)
  • 浮点型:float(4字节)、double(8字节)
  • 字符型:char(2字节)
  • 布尔型:boolean(1 bit)

2、引用类型

记住,除了基本数据类型,其他都为引用类型。

举几个栗子吧,类、接口、数组......

二、基本数据类型转换

1、在类型转换之前,我们首先要清楚基本数据类型的级别(从高到低):

​ double > float (https://www.xiaoyuani.com/)> long > int > byte、short、char

2、转换分为自动转换和强制转换

  • 自动转换 当一种基本数据类型转换为比它高级的基本数据类型时,计算机可以自动转换
  • 强制转换 当一种基本数据类型转换为比它低级的基本数据类型时,需要我们手动进行强制转换

3、强制转换要点

  • 转换格式 在高级类型前加小括号,括号内为要转化的低级类型。 举栗子说明: //将double型转化为int型 int a = 0; double b = 3.11; a = (int) b;
  • 应用:多种数据类型参与表达式计算 注:在四大类八小种基本数据类型中,整型、字符型、浮点型都可以参与运算,但唯独布尔类型不可参与运算。 运算过程: 计算机在运算过程中,会找到级别最高的类型,然后将其余类型全部转化为当前表达式级别最高的类型,再进行运算。
  • 特殊情形一 对于byte、short、char这三类,只要数值在它们可以表示的范围内,赋值时无需进行转化。 举栗子:

分析: 12在byte可表示范围内,而270不在,又因为整数会默认为int型,int型级别高于byte,因此不强制转化会出错! —————————————————————————————————————————————————————————————————————————————————————————————————————————— 接着上面的栗子,看看通过强制转换的结果是什么样子

—————————————————————————————————————————————————————————————————————————————————————————————————————————— 有木有发现270变为14了! 接下来,我带你进行内存分析,告诉你why!

  • 特殊情形二:double强制转化为int时,不是四舍五入,而是掉尾巴方法(即直接去掉小数部分)! 举栗子:

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、数据类型
  • 二、基本数据类型转换
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档