我们都知道JAVA是强类型语言。针对于JAVA的基本类型可以有两种方式的类型转换,自动类型转换和强制类型转换。
自动类型转换
顺序是 byte->short(char)->int->long->float->double
强制类型转换
强制类型转换,即显式类型转换,是指必须书写代码才能完成的类型转换。该类类型转换很可能存在精度的损失,所以必须书写相应的代码,并且能够忍受该种损失时才进行该类型的转换。
转换规则:从存储范围大的类型到存储范围小的类型。
具体规则为:double→float→long→int→short(char)→byte
语法格式为:(转换到的类型)需要转换的值
没有final修饰的变量相加后会被自动提升为int型,与目标类型byte不相容,需要强制转换(向下转型)
double x = 1.2;
int t = (double) x;
这时候我们输出t的结果 就是1
下面这道题是阿里巴巴2015校招题,我们可以来看一下做一下巩固练习
一个函数定义的返回值是float,它不能在return语句中返回的值的类型是:__。
char
int
float
long
double
以上皆可以
很明显这道题选择的是double 这就是一道典型的强制类型转换。
以后若有类似题目 还会继续更新