数据类型转换
程序员文章站
2022-03-18 09:34:55
...
理解数据类型的自动转换:
将取值范围小的类型自动提升为范围大的类型,如:
byte、short、char→int→long→float→double |
//一个int类型变量和一个byte类型变量进行加法运算,结果会是什么数据类型?
public static void main(String[] args){
int i=1;
byte b=2;
//byte x=b+i; //报错
//int类型和byte类型运算,结果为int类型
int a=i+b;
System.out.println(a);
}
理解数据类型的强制转换:
将取值范围大的类型强制转换成取值范围小的类型
强制转换的格式 | 数据类型 变量名=(数据类型)被转数据值; int a=(int)1.5; |
public static void main(String[] args){
//short类型变量,内存中2个字节
short s=2;
int a=2;
/*
出现编译失败
s和a做运算的时候,a是int类型,s会被提升为int类型
s+a的结果会是int类型,将结果在赋值回short类型时发生错误
short内存2个字节,int类型内存4个字节
必须将int强制转换为short才能完成赋值
*/
s=s+a;//编译失败
s=(short)(s+a);//编译成功
}
强烈注意:
|
|
ASCLL编码表:
理解char类型和int类型的运算原理:
public static void main(String[] args){
char ch='A'; //定义char类型的变量ch为a
char ch1=(char)(ch+32); //强制转换字符型加上32
System.out.println(ch1); //输出ch1,结果为小写'a'
}
上一篇: Python SMTP服务发送邮件