一、类型转换
从一种数据类型转换成另一种的技术就是类型转换
为什么要类型转换?
由于java是强类型语言,当多个参与运算的数据类型不一致的时候,无法直接运行,必须先将类型统一,然后才能运算,所以就需要类型转换;
怎样做到类型转换?
隐式转换
当小的数据,转成大的类型的时候,这个过程没有风险,所以java会自动完成类型转换,因此叫做隐式转换;
大白话:把350ML一瓶的可乐倒进1L一瓶的可乐瓶中,不用担心溢出。
书写格式:
大的数据类型 变量名 = 小的数据值
double a = 4;
强制转换
把一个表示数据范围大的数值或变量赋值给另一个表示数据范围小的变量
书写格式:
目标数据类型 变量名 = (目标数据类型)值或变量
int k = (int) 23.33;
数据类型的大小顺序
注意事项
- byte,short,char这三种数据类型参与运算的时候,都会先提升成int类型,然后再参与运算;
- 整数常量运算的时候,在编译期间会对常量运算进行优化,以提升程序的运行效率;
二、运算符
可以进行运算的符号,用这些可以运算的符号连接起来的式子叫表达式;
算数运算符
专门进行算术运算的符号
例如: 加减乘除求余数;
字符运算
每个字符都能在ASCII码表中找到一个对应的数字,所以使用字符进行算术操作的时候,相当于使用了数字进行算术操作;
常见字符对应关系
-
‘A’ --> 65
-
‘a’ --> 97
-
‘0’ --> 48
字符串连接运算符
字符串和任意数据类型进行相加,都是直接拼到一块!
System.out.println(5 + "2" + 1);//结果将打印字符串类型的521
比较运算符(关系运算符)
逻辑运算符
用来连接关系表达式或布尔类型常量或变量的运算符
参与运算的都是boolean类型的数据,而且运算的结果还是boolean类型的结果
短路逻辑运算符
自增自减运算符
赋值运算符
三元运算符
有3部分元素参与运算的符号就是三元运算符;
一元运算符: ++ – ! +(正) -(负)
二元运算符: + - * / % & |
三元运算符: 关系表达式 ? 表达式1 : 表达式2;
执行流程
- 首先计算关系表达式的值
- 值为true,返回表达式1的值
- 值为false,返回表达式2的值