类型转换,变量,常量,作用域,基本运算符
类型转换
为什么需要类型转换?
因为java是强类型语言,严格区分大小写和数据类型,包括对象
java中基本数据类型容量从低到高
低 --------------> 高
byte char short int long float double
在进行运算的过程中需要先将数据类型转换成同一类型,然后再进行计算
强制转换
从大类型转换成小类型,注意一个内存溢出问题
int i = 128
byte b = i;
System.out.println(i);//输出结果128
System.out.println(b);//输出结果-128 内存溢出
自动类型转换 低类型到高类型
注意点:
1. 不能对布尔值进行转换
2. 不能把对象类型转换为不相干的类型
3. 在把高容量转换到低容量的时候,强制转换
4. 转换的时候可能存在内存溢出,或者精度问题
System.out.println(int(27.4));//输出结果27 精度有问题
System.out.println((int)-45.12F);//输出结果-45
类型转换计算举例
int money = 10_0000_0000;//7版之后JDK新特性,数字之间可以用下划线分割
int years = 20;
int total = money*years;//-1474836480,计算完内存溢出
long total2 = money*years;//-1474836480,计算完内存溢出,因为这边默认是int类型先进行计算,计算完成之后再转换成long类型的
long total3 = money*(long)years;//输出20亿
补充:比如定义 long d= 20L;float f = 21.2F;尽可能使用大写的字母,不要使用小写的字母表示,否则会可能会出现l和1这种认为区分错误出现。
变量
Java是一种强类型语言,每个变量都必须申明其类型
Java变量是程序中最基本的存储单元,其要素包括变量,变量类型和作用域
作用域
- 类变量
需要关键词 static
public class A {
static int a;
static int b;
public static void main(Strings[] args){
System.out.println(a);//由static声明的类变量,在类加载时就已经存在,可以直接调用
}
}
- 实例变量
在类中定义变量
public class A {
int age;
String name;
public static void main(Strings[] args){
A a = new A();
System.out.println(a.age);//在类中声明通过创建类之后可以调用的变量称之为实例变量,输出结果为0
//这边补充一点,实例变量如果没有赋初值,会有一个默认初始化值,基本数值型数据类型默认为0,boolean默认为false,其他类型默认为null
}
}
- 局部变量
在方法中的变量
public class A {
public static void main(Strings[] args){
run();//输出结果10,只在当前方法内有效的变量叫做局部变量
System.out.println(a);//报错
}
public void run(){
int a = 10;
System.out.println(a);
}
}
常量
常量:初始化后不能再改变值!不会变动的值
所谓常量可以理解成一种特殊的变量,他的值被设定后,在程序运行过程中不允许被改变
使用final关键词修饰
public class A {
static final double PI = 3.14;
final static double MYPI = 3.14;
public static void main(Strings[] args){
System.out.println(PI);//输出结果 3.14
System.out.println(MYPI);//输出结果 3.14
/* 这边前面说到过static修饰的类变量在类加载时就已经存在了,可以直接通过类型调用,因为我们现在是在一个类中的所以省略掉了A,其实应该是A.MYPI,A.PI这样去调用
这边看到static和final的位置是不一样的,但是都能输出结果3.14,说明了**修饰符**是不分前后的,位置可以随个人喜好
*/
}
}
常量名一般使用大写字符
变量的命名规范
1. 所有的变量、方法、类名:见名知意
2. 类成员变量:首字母小写和驼峰原则:monthSalary
3. 局部变量首字母小写和驼峰原则
4. 常量:大写字母和下划线:MAX_VALUE
**补充**
类名:首字母大写和驼峰原则:Man,GoodMan
方法名:首字母小写和驼峰原则:run(),runRun();
基本运算符
先了解一下运算符大概有以下这些
Java语言支持如下运算符
- 算数运算符:+,-,*,/,%,++,--
- 赋值运算符:=
- 关系运算符:>,<,>=,<=,==,!=,instanceof
- 逻辑运算符:&&,||,!
- 位运算符:&,|,^,~,>>,<<
浙公网安备 33010602011771号