小数:double,float!
整数:byte,short,int,long!
字符:char
布尔值:boolean
类型转换:
自动转换:byte,short,char → int → long → float → double
byte,short,char之间不会相互转换,他们在计算时首先会转换为int类型。
boolean 类型是不可以转换为其他基本数据类型。
强制转换:
/**
小转大,自动!自动类型转换(也叫隐式类型转换)
大转小,强转!强制类型转换(也叫显式类型转换)
*/
public class Demo {
public static void main(String[] args) {
long l = 123L;
int i = (int) l; //强制转换
double d = 3.14;
float f = (float) d; //强制转换
System.out.println(i);
System.out.println(f);
}
}
java运算符:
/**
算术运算符(+ 、— 、* 、/ 、%)
赋值运算符(= 、+=、-=、*=、/=,、%=)
关系运算符(>、>=、<、<=、!=)
条件运算符(&&、||、!&、|、^)
位运算符(&、|、^、~、>>、<<、<<<、>>>)
单与时,左边无论真假,右边都进行运算;双与时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
*/
public class Demo {
public static void main(String[] args) {
int i = 10; //赋值
int j = 15;
System.out.println("i+j= " + (i+j)); //算数
System.out.println("i*j= " + (i*j));
System.out.println(i > j); //关系运算,返回boolean值!
System.out.println(i > 9 && j < 20); //条件,关系运算,返回boolean值!
}
}
三目运算符:/**
“三目运算符”,语法格式:x ? y : z;
其中x为boolean类型表达式,先计算x的值,若为true,则整个三目运算符的结果是表达式y的值,否则就是z的值。
*/
public class Demo {
public static void main(String[] args) {
String s = "lz";
s = (s == "lz" ? "正确" : "错误");
System.out.println(s); //输出:正确
}
}