发表时间:2022-03-26来源:网络
数据类型: Java是一门强类型语言,针对每一种数据都提供了对应的类型
八大基本数据类型
整数类型 字节数 取值范围
byte 1 -128~127
short 2 -32768 ~ 32767
int 4 -2^31 ~ 2^31 - 1
long 8 -2^63 ~ 2^63 - 1
小数类型
float 4 -3.403E38 ~ 3.403E38
double 8 -1.798E308~1.798E308
注意:
1.虽然小数表示的范围特别大,但是永远不能够存储所有的小数,因为小数存在无限不循环小数 2.同样是4/8个字节的小数类型取值范围大于整数类型,原因是小数和整数的存储形式不一样 3.在处理金融相关项目的时候,小数的计算要求精度非常高,那么使用float或者double来表示会出现精度问题,后期考虑使用BigDecimal来处理布尔类型
boolean 1 false true
字符类型
char 2 0 ~ 65535 【Java使用Unicode编码的范围】
引用数据类型
类 (class) String
接口 (interface)
数组 ([])
数据类型转换
当运算符两边类型不一致的时候,需要进行类型转换
类型转换的依据: 取决数据的取值范围
从上图可以观察出以下注意事项:
1.boolean类型不能够参与类型转换
2.char和byte/short只有交集关系,没有子集关系
3.数据类型的数据范围顺序:
byte -> short -> int -> long -> float -> double
char ->
1.自动类型转换 大类型数据 = 小类型数据
将小类型的数据转换成大类型数据,系统会自动转换
2.强制类型转换 小类型数据 = 大类型数据
将大类型的数据转换成小类型的数据,会编译报错
解决办法: 强制类型转换
格式:
目标类型 变量名 = (目标类型) 被转换的类型;
强制类型转换会出现的问题:
1.精度的丢失
2.数据的溢出
3.byte/short/char特例
4.byte/short 和 char 参与转换,都需要强制类型转换
5.表达式类型提升
当表达式的运算符两边类型不一致的时候,结果的类型会自动向高类型转换
6.当byte short char 之间参与运算的时候,底层都会转换成int类型来计算
7.boolean类型不能够参与运算和转换
8.字符串在参与运算中的转换问题,字符串相加是拼接操作
9.变量计算和常量计算问题
变量相加,编译器无法判断具体的结果
常量相加,在编译时期,系统就会运算结果
皓盘云建最新版下载v9.0 安卓版
53.38MB |商务办公
ris云客移动销售系统最新版下载v1.1.25 安卓手机版
42.71M |商务办公
粤语翻译帮app下载v1.1.1 安卓版
60.01MB |生活服务
人生笔记app官方版下载v1.19.4 安卓版
125.88MB |系统工具
萝卜笔记app下载v1.1.6 安卓版
46.29MB |生活服务
贯联商户端app下载v6.1.8 安卓版
12.54MB |商务办公
jotmo笔记app下载v2.30.0 安卓版
50.06MB |系统工具
鑫钜出行共享汽车app下载v1.5.2
44.7M |生活服务