类型转换
强制类型转换
int i = 128; byte n = (byte)i; //内存溢出 System.out.println(n); //n = -128
自动转换
int i= 128; double b = i; System.out.println(b); //b = 128.0
注意事项
-
不能对布尔(boolean)类型的数据进行转换
-
不能把对象类型转换为不相干的类型
-
强制转换可能会存在内存溢出或精度问题
-
转换问题
int money = 10_0000_0000; int year = 20; int total = money * year; //内存溢出,total = -1474836480 long total1 = money * year; //类型转换失败,默认为int,total1 = -1474836480 long total2 = money * ((long)year); //转换成功
JDK7 新特性
int money = 10_0000_0000; System.out.println(money); //money = 1000000000
变量
public class Demo{
//类变量 static
static double salary = 2500;
//实例变量
String name;
int age;
//main方法
public static void main(String[] args){
//局部变量,声明、初始化
int i = 10;
System.out.println(i)
//变量类型 变量名字 = new 类名;
Demo demo = new Demo();
System.out.println(demo.age); //打印0
System.out.println(salary); //salary = 2500
}
//其他方法
public void add(){
}
}
常量 final
public class Demo{
//修饰符不存在先后顺序
static final double PI = 3.14;
public static void main(String[] args){
System.out.println(PI);
}
}
本文详细介绍了Java中的类型转换,包括自动转换和强制转换的特点及注意事项,并通过具体示例展示了可能遇到的问题,如内存溢出等。此外,还讲解了变量的定义、使用以及JDK7的新特性。

被折叠的 条评论
为什么被折叠?



