java数据类型两种转换方式 Java中数据类型的自动转换与强制转换(1)

1.数据类型的自动转换:

表数范围小的可以向表数范围大的进行自动类型转换。这个自动转换是系统自动完成的。

byte,short,char<- int <- long <- float <- double

这是由小到大的顺序。


例如:某班a同学考试85.5分,b同学比a同学多5分,求b同学的分数?

public class Test{

public static void main(String[] args){

double aScore=85.5;

double bScore;

int _duo=5;

bScore=aScore _duo;

System.out.println("b同学的分数为:" bScore);

}

}


输出结果为:b同学的分数为:90.5


红色代码里面有int(整形)_duo和double(双精度)aScore两种数据类型,最后我们在输出的时候系统自动转换为double类型。


public class Test{

public static void main(String[] args){

String a="你";

char b='好';

String c=a b;

System.out.println(c);

}

}


这里输出结果:你好

这里就是把单字节自动转化为字符串。


2.强制转换

强制转换的格式是在需要转型的数据前加上“( )”,然后在括号内加入需要转化的数据类型。有的数据经过转型运算后,精度会丢失。


例如:

public class Test{

public static void main(String[] args){

double aScore=85.5;

System.out.println("a同学的分数为:" (int)aScore);

}

}


输出结果为:a同学的分数为:85


这里就是把double类型的数据,强制转换为int类型的数据。85.5变成85,所以强制转换会损失精度。

但是String是不能转换成char的 大家记住。


喜欢就点个关注吧,想学习的朋友私信回复“学习”领取最新免费学习视频资料!

,