数剧类型转换
数剧类型由低到高排名
低--------------------------------高
byte,short,char->int->long->float->double
运算中不同类型的数剧先转换为同一类型,然后在进行运算。
public class Demon04 {
public static void main(String[] args) {
int i = 128;
byte b = (byte)i;//内存溢出
System.out.println(i);
System.out.println(b);
//128 -128
//强制转换(类型)变量名 高——低
//自动转换低到高
/*
1.不能对布尔值进行转换
2.不能把对象类型转换为不相干的类型
3.把大容量转换为低容量的时候,强制转化,反之则不需要强制转换
4.转换的时候可能存在内存溢出。或者精度问题!
*/
System.out.println("====================");
System.out.println((int)23.7);//23
System.out.println((int)43.8f);//43 精度问题
//操作比较大的数的时候,注意溢出问题
int money = 10_0000_0000;
int years = 20;
int total = money*years;
long total2= money*(long)years;
System.out.println(total);//-1474836480 因为total是两个int在计算
System.out.println(total2);//2000000000 total计算的是long类型
变量
- 变量是什么:就是可以变化的量!
- java是一种强类型语言,每个变量都必须声明其类型
- java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
注意事项:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
- 变量名必须是合法的标识符。
- 变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
变量作用域
- 类变量
- 实例变量(类里面方法外面,从属于对象)
- 局部变量(在一个方法里面使用)
public class Demon06 {
//类变量 static
static double salary =2500;
//属性:变量
//实例变量:从属于对象;如果不自行初始化,会变成默认值 0 0.0 null
//布尔值:默认是false
//除了基本类型其余的默认值都是null;
String name;
int age;
//main方法
public static void main(String[] args) {
//局部变量;必须声明和初始化值
int i=10;
System.out.println(i);
//10
//变量类型 变量名字 =new Demon06();
Demon06 demon06 = new Demon06();
System.out.println(demon06.age);
System.out.println(demon06.name);
//0 null
//类变量 static
System.out.println(salary);
//2500.0
}
}
常量
final 常量名=值;
final double PI=3.14
变量的命名规范
- 所有变量,方法,类名:见名知意
- 类成员变量:首字母小写和驼峰原则:monthSalary除了第一个单词意外,后面的单词首字母大写lastName,
- 局部变量首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man.GoodMan\
- 方法名:首字母小写和驼峰原则run(),runRun()