Day 03:Java基础 2
类型转换
-
由于Java是强类型语言,所以要进行有些运算的时候,需要用到类型转换。
低-----------------------------------------------------------------------------------------------高
byte,short,char -> int -> long -> float -> double
-
运行中,不同类型的数据先转换为同一类型,然后进行运算。
-
强制类型转换
-
自由类型转换
public class Demo05 {
public static void main(String[] args) {
int i = 128;
byte b = (byte) i;//内存溢出
//(byte)是强制转换 格式是:(类型)变量名 高--低
//自动转换 低--高
int c = 128;
double d = c;
System.out.println(i);
System.out.println(b);
System.out.println(c);
System.out.println(d);
/*
注意点:
1、不能对布尔值进行转换
2、不能把对象类型转换成不相干的类型
3、在高容量转换到低容量的时候,需要强制转换
4、转换的时候可能存在内存溢出,或者精度问题
*/
System.out.println("=================================");
System.out.println((int) 23.7);
System.out.println((int) -48.89f);
System.out.println("=================================");
char x = 'a';
int z = x+1;
System.out.println(z);
System.out.println((char) z);
System.out.println("=================================");
//操作比较大的时候注意溢出问题
//jak7新特性,数字之间可以用下划线分割
int money = 1000000000;
int years = 20;
int tota1 = money * years;//-1474836480,计算的时候溢出了
long tota2 = money * years;
System.out.println(tota1);
System.out.println(tota2);//默认是int,所以转换之前就出现问题了
long total3 = money*((long)years);
System.out.println(total3);
}
}
变量详解
- 变量是什么?可以变化的量!
- 通过变量操作内存的数据
- Java是一种强类型语言,每个变量都必须要有声明类型。
- Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
- [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AQUMd4Um-1612452682247)(C:\Users\张\AppData\Roaming\Typora\typora-user-images\image-20210204225606093.png)]
- 注意事项:
- 每个变量都有类型,类型可以是基本类型,也可以是引用类型。
- 变量名必须是合法的标识符。
- 变量声明是一条完整的语句,因此每一个声明都必须要以分号结束。
变量作用域
- 类变量
- 实例变量
- 局部变量
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-w6YYmnwb-1612452682249)(C:\Users\张\AppData\Roaming\Typora\typora-user-images\image-20210204230236285.png)]
常量
- 常量(Constant):初始化(initialize)后不能在改变值!不会变动的值。
- 常量可以理解成一种特殊的变量,它的值被设定后,在程序运行中不允许被改变。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9kXDsDRq-1612452682251)(C:\Users\张\AppData\Roaming\Typora\typora-user-images\image-20210204231952251.png)]
- 常量名一般使用大写字符。
变量的命名规范
- 所有变量、方法、类名:见名知意
- 类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词以外,后面的单词首字母大学 lastname lastName
- 局部变量:首字母小写和驼峰原则
- 常量:大写字母和下划线:MAX_VALUE
- 类名:首字母大写和驼峰原则:Man,GoodMan
- 方法名:首字母小写和驼峰原则:run(),runRun()
便于阅读