类型转换
低-------------高
byte,short,char-----int-----long-----float-----double
int i=128;
byte b =(byte)i;//内存溢出
//输出结果128 -127
//强制转换 (类型)变量名 高---低
//自动转换 低---高
注意:
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.在把高容量转换到底容量的时候,强制转换
4.转换的时候可能存在内存溢出,或者精度问题
System.out.println((int)23.7); //23
System.out.println((int)-45.89f); //-45
char c= 'a';
int d = c+1;
System.out.println(d); //98
System.out.println((char)d); //b
int money = 10_0000_0000;
int years = 20;
int total = money*years; //-1474836480,计算的时候溢出了
int total1 = money*years; //默认是int,转换之前已经存在问题了
int total3 = money*((long)years); //先把一个数转换为long
System.out.println(total3); //正确答案
变量
数据类型 变量名 = 值; 可以使用逗号隔开来声明多个同类型变量
注意:
1.每个变量都有类型,类型可以是基本类型,也可以是引用类型
2.变量名必须是合法的标识符
3.变量声明是一条完整的语句,每一个声明都必须以分号结束
命名规范:变量名:首字母小写和驼峰原则
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线
类名:首字母大写和驼峰原则
方法名:首字母小写和驼峰原则
运算符
算术运算符:+,-,,*,/,%,++,–
赋值运算符:=
关系运算符:>, <, >=, <=, ==, !=, instanceof
逻辑运算符:&&,||,!
int a = 3;
int b = a++;//执行完这行代码后,先给b赋值,再自增
//a=a+1;
//a=a+1;
int c = ++a;//执行完这行代码前,先自增,再给b赋值
//幂运算 很多运算我们会使用一些工具类操作
double pow = Math.pow(3,2); //3的2次方
Systme.out.println(pow); //9.0
//逻辑运算
boolean a = true;
boolean b = false;
System.out.println(a&&b); //与运算:两个变量都为真,结果才为true
System.out.println(a||b); //或运算:两个变量有一个为真,则结果为true
System.out.println(!(a&&b));//非运算:如果是真,则变为假
三元运算符:
x ? y : z //如果x==true, 则y,否则,z