类型转换
低------------------------------------------------------------>高
byte,short,char--->int--->long--->float--->double
运算中,不同类型数据先转化为同一类型,然后进行运算
-
强制类型转换
-
int i=128;
byte b=(byte)i; //内存溢出
//强制转换 (类型)变量名 高-->低
//自动转换 低-->高
System.out.println(i); //128
System.out.println(b); //-128
注意点
-
不能对布尔值进行转换
-
不能把对象类型转换为不相干的类型
-
高容量-->低容量,强制转换
-
转换时可能存在内存溢出或精度问题
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
操作比较大的数的时候,注意溢出问题
JDK7新特性,数字间可以用下划线分割
int money = 10_0000_0000;
int years = 20;
int total = money*years; //-1474836480,计算时溢出
long total2 = money*years; //-1474836480,默认是int,转换之前就存在问题
long total3 = money*((long)years);//先把一个数转化为long
System.out.println(total3); //20000000000
变量
-
变量是可以变化的量
-
Java是强类型语言,每个变量必须声明其类型
-
Java变量是程序中最基本的储存单元,包括变量名,变量类型,作用域
注意点
-
每个变量都有类型,类型可以是基本类型,也可以是引用类型
-
变量名必须是合法的标识符
-
变量声明是一条完整的语句,必须用分号结尾
程序可读性,尽量不要在一行声明变量
类变量,实例变量,局部变量
public class Demo08
//类变量 static
static double salary = 2500;
//属性:变量
//实例变量:从属于对象:如果不自行初始化,这个类型默认值0,0.0
//布尔值:默认false
//除了基本类型,其余默认值null
String name;
int age;
//main方法
public static void main(String[] args){
//局部变量:必须声明和初始化值
int i = 10;
System.out.pritln(i);
//变量类型 变量名字 = new Demo08();
Demo08 demo08 = new Demo08();
System.out.println(demo08.age);
System.out.println(demo08.name);
//类变量 static
System.out.println(salary);
}
常量
-
初始化以后不能再改变值
-
是特殊的变量,被设定之后,在程序中不允许被改变
-
常量名一般用大写字符
final 常量名 = 值;
final double PI = 3.14;
//修饰符,不存在先后顺序
static final double PI = 3.14;
//等于 final static double PI = 3.14;
public static void main(String[] args){
System.out.println(PI); //3.14
}
变量命名规范
-
所有变量,方法,类名:见名知意
-
类成员变量:首字母小写和驼峰原则:monthSalary 除了第一个单词后面的单词首字母大写 lastName
-
局部变量:首字母小写和驼峰原则
-
常量:大写字母和下划线:MAX_VALUE
-
类名:首字母大写和驼峰原则:Man,GoodMan
-
posted on
浙公网安备 33010602011771号