引用数据类型的使用
导包
引用数据类型
使用功能
举例
Scanner
导包
import java.util.Scanner;
引用数据类型
Scanner sc = new Scanner(System.in);
使用功能
sc.nextInt();
sc.nextByte();
sc.nextShort();
sc.nextLong();
sc.nextDouble();
sc.nextFloat();
sc.next();
sc.nextIint();
Random
导包
import java.util.Random;
引用数据类型
使用功能
运算符
种类
算数运算符
种类
+
正号 (一般省略)
加法运算
字符串的连接符
当+左右两边操作数只要是""字符串,+就做为字符串连接符,把左右两边的数据拼接成为一个字符串
-
负号
减法运算
*
/
%
取余数
当第一个操作数<第二个操作数,结果为第一个操作数
++
--
自增自减
规律
只操作自己
++放在操作数的前面后面都是自身+1
--放在操作数的前面后面都是自身-1
影响其他结果 : (赋值,表达式,输出)
++--放在操作数前面,先+1|-1,再去运算
++--放在操作数后面,先去运算,再进行+1|-1
赋值运算符
=
=是java中唯一一个自右向左运算的符号 优先级最低
+=,-=,*=,/=,%=
优点
执行效率快
自动做强制类型转换
注意
编译期间编译器会自动把可以实现的位置优化成为扩展赋值运算符
比较|关系运算符
种类
>
<
>=
<=
==
!=
结果为boolean类型
左右的表达式可以是基本数据类型也可以是引用数据类型
逻辑运算符
种类
& 与
都为true,才为true
| 或
只要有一个为true就是true
! 非
取反
^ 异或
同性相斥异性相吸
短路 : 如果左边的操作数的值能够决定最终表达式的结果 ,第二个操作数不会执行&&和||
注意
操作数必须为boolean,值为boolean的表达式
条件运算符
也称三目运算符
条件表达式 ? 值1 : 值2 ;
条件表达式是boolean类型的结果不是true就是false
先计算条件表达式,得到boolean结果
条件表达式如果是true就执行值1,false就执行值2
位运算符
元素
操作数
运算符左右两边的数据
表达式
运算符连接操作数整体称为表达式
语句
语句以;结束
数据类型转换
大转小(强制类型转换)
需要声明,可能会造成精度损失,在需要转化的类型面前加上(需要转换的类型)
小转大(自动类型提升)
可以正常存放,但可能造成内存浪费,不用特意声明
注意
如果多种类型的数据参与运算,结果类型为参与运算的数据的最大类型
如果结果类型为<int类型,最终会自动提升为int类型
byte,short,char类型赋值,如果是常量int,只要范围允许,可以进行赋值
final int i2 = 97;char ch = i2;
boolean不参与类型转换