类型转换
代码
public class Demo04 {
public static void main(String[] args) {
int i = 128;
byte b = (byte) i;//内存溢出
//强制转换 (类型)变量名 高---低
//自动转换 低---高
System.out.println(i);
System.out.println(b);
/*注意点:
1.不能对布尔值进行转换
2.不能把对象转换为不相干的类型
3.高容量转低容量量,强制转换;反之不用管
4.转换的时候容易出现内存溢出,或精度问题!
*/
System.out.println("==================================");
System.out.println((int) 23.7);//23
System.out.println((int) -45.89f);//-45
System.out.println("==================================");
char c ='a';
int d = c+1;
System.out.println(d);
System.out.println((char) d);
}
}
常见问题
代码
public class Demo05 {
public static void main(String[] args){
//操作比较大的数的时候,注意溢出问题
//数字之间可以使用下划线分割
int money = 10_0000_0000;
int years = 20;
int total = money*years;//-1474836480,计算溢出
long total2 = money*years;//默认int,存在问题
long total3 = money*((long)years);//先把一个数转换为long
System.out.println(total3);
}
}
变量
变量作用域
public static void main(String[] args) {
//int a,b c;
int a=1;
int b=2;
int c=3;
String name = "feiyu";
char x = 'X';
double pi = 3.14;
//变量格式
}
}
局部变量
//属性
//main方法
public static void main(String[] args) {
//局部变量:必须申明和初始值
int i = 10;//给i附一个具体的值
System.out.println(i);
}
}
实例变量
System.out.println(i);
//变量类型 变量名字 = new Demo07();
Demo07 demo07 = new Demo07();
System.out.println(demo07.age);
System.out.println(demo07.name);
//实例变量:从属对象;如果不初始化就会变成这个类型的默认值,在类里面 0 0.0 u0000
类变量
static double salary = 2500;//类变量加static
public class Demo08 {
//修饰符不存在先后顺序
static final double PI = 3.14;
public static void main(String[] args) {
System.out.println(PI);//引用
}
}
//final常量,大写表示F
常量
//修饰符不存在先后顺序
static final double PI = 3.14;
public static void main(String[] args) {
System.out.println(PI);//引用
}
}
//final常量,大写表示F
变量的命名规范
- 所有变量,方法,类名:见明知意
- 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词外,后面的单词首字母大写lastName
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man,GoodMan
- 方法名:首字母小写和驼峰原则:run(),runRun()