Java基础(二)
类型转换
-
Java是强类型语言,在运算是需要类型转换为同一类型
低————————————————————》强
byte,short,char—》int—》long—》float—》double
![]()
-
强制类型转换
-
自动类型转换
public class Demo3 {
public static void main(String[] args) {
int q = 128;
//byte的范围在-128——127 导致内存溢出
byte w = (byte)q;
//强制转换 (类型)变量名 高到低
short e = (short)q;
//自动转换 低到高
long r = q;
System.out.println(q);
System.out.println(w);
System.out.println(e);
System.out.println(r);
System.out.println((int)123.12F);
/*
注意点:
1. 布尔值不能进行转换
2. 不能把对象类型转换为不相干的类型
3. 把高容量的转换为低容量的时候 强制转换 反之
4. 转换的时候可能存在内存溢出,或者精度问题
*/
}
}public class Demo4 {
public static void main(String[] args) {
int money = 20_0000_0000;
int years = 30;
//-129542144,内存溢出
int total = money*years;
//还是输出-129542144,说明计算的时候已经溢出了
long total1 = money*years;
//输出60000000000,在运算前进行转换就可行
long total2 = ((long)money)*years;
System.out.println(total);
System.out.println(total1);
System.out.println(total2);
}
}变量
-
变量:可以变化的量
-
储蓄单元其要素包括变量类型,变量名和作用域
-
可以用逗号隔开 申明多个同类型变量
-
-
局部变量:是在方法里的 必须声明和初始化值
-
实列变量:实在类的里面 从属于对象
如果不初始化值,将输出这个类型的默认值
布尔值类型的默认值为false
除了基本类型,其余都默认值都是null
-
类变量 static
??
?? 类>方法??
??
常量
-
不会改变的值
final 常量名一般用大写的字符

public class Demo5 {
//类变量 static
static byte salary = 100;
/*
1.常量 final 但我想在非静态中运行需加个类变量
2.变量类型前面为修饰符号 不存在先后顺序
*/
static final char W = 'x';
//实列变量
int age = 20;
//方法 main
public static void main(String[] args) {
//方法里为局部变量
short years = 20;
//变量类型也可以是自己
Demo5 demo5 = new Demo5();
System.out.println(years);
System.out.println(demo5.age);
System.out.println(salary);
System.out.println(W);
}
}
变量命名规则
-
所有的变量,方法,类名:见名知意
-
类成员变量名:首字母小写和驼峰原则 xueTaiHong 首字母小写其他字母开头大写
-
局部变量名同上
-
常量名:大写字母和下划线 XUE_TAI_HONG
-
类名:首字母大写和驼峰原则
-
方法名:首字母小写和驼峰原则


浙公网安备 33010602011771号