Java基础语法-day2,类型转换、变量和常量
整数拓展
进制:二进制0b、十进制、八进制0、十六进制0x
public class Demo02 {
public static void main(String[] args) {
int i =10;
int i2=010;
int i3=0x10;
System.out.println(i);
System.out.println(i2);
System.out.println(i3);
}
}
输出结果:10 8 16
浮点数拓展
银行业务怎么表示?
使用BigDecimal 数学工具类
字符拓展
public class Demo02 {
public static void main(String[] args) {
char c1 ='a';
char c2 ='中';
System.out.println(c1);
System.out.println((int)c1);//强制转换
System.out.println(c2);
System.out.println((int)c2);//强制转换
输出结果:a 97 中 20013
}
}
所有的字符本质都是数字
\t:制表符
\n:换行
类型转换
低---------------------------------------------------------->高
byte ->short ->char->int->long->float->double
强制转换 高->低 (类型)变量名
int i=1;
byte b=(byte)i;
自动转换 低->高
int i=1;
double b=i;
注意点:
-
不能对布尔值进行转换;
-
不能把对象类型转换位不相干的类型;
-
转换的时候可能存在内存溢出和精度问题;
public class Demo02 {
public static void main(String[] args) {
char c ='a';
char d =c+1;
System.out.println(d);
System.out.println((char)d);
输出结果:98 b
}
}
public class Demo02 {
public static void main(String[] args) {
//操作比较大的数,注意溢出问题
//数字之间可以用下划线分割并不会被输出
int money = 10_0000_0000;
int years = 20;
int total = money*years;//-1474836480,计算溢出
long total2 = money*years;//转换之前存在问题,
long total3 = money*((long)years);//先转型,后运算
System.out.println(total3);
}
}
变量
变量:就是可以变化的量;
变量作用域
类变量
实例变量
局部变量
public class Demo03 {
//类变量 static
static double salary=2500;
//实例变量:从属于对象;如果不自行初始化,这个类型的默认值 0
//布尔值:默认类型是false
//除了基本类型,其余默认值都是null
String name;
int age;
public static void main(String[] args) {
//局部变量:必须声明初始化值
int i=10;
System.out.println(i);
//变量类型 变量名字
Demo03 demo03=new Demo03();
System.out.println(demo03.age);
System.out.println(demo03.name);
System.out.println(salary);
}
}
常量
常量:不会变的值
final 定义常量
常量命一般使用大写字符
public class Demo04 {
//修饰符不存在先后顺序
static final double PI = 3.14;
public static void main(String[] args) {
System.out.println(PI);
}
}
变量大的命名规范
类成员变量:首字母小写和驼峰原则
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线:MAX_VALUE
类名:首字母大写和驼峰原则:Man,GoodMan
方法名:首字母小写和驼峰原则:run();runRun()
浙公网安备 33010602011771号