表达式(short)10/10.2*2运算后结果是什么类型?

题目: 表达式(short)10/10.2*2运算后结果是什么类型?–牛客网.

表达式(short)10/10.2*2运算后结果是什么类型?
A. short
B. int
C. double
D. float
正确答案:double

分析

Java中的运算符,一元运算符优先级很高,四则运算符其次,再是移位运算符,然后是关系运算符、位运算符、与或(非是一元运算),最后是赋值运算符。
用圆括号强制类型转换属于一元运算符,先于乘除运算,所以此时有(short)10除以10.2,10.2为浮点数,Java浮点数默认为double,因此计算除法时,将short转换为double型,后面乘法同理,最后结果即为double型。

  • 注意:
    java 黙认浮点类型为double
    float数据类型有一个后缀为" f “或” F “。
    long类型有一个后缀,为” l " 或者" L "。

示例代码:

public class ShortTest {
	public static void main(String[] args) {
		double i = (short) 10 / 10.2 * 2;
		System.out.println(i); // 1.9607843137254903
	}
}

你可能感兴趣的:(java)