笔试题总结——final关键字引发的数据类型转换问题

笔试题总结——final关键字引发的数据类型转换问题

笔试题总结——final关键字引发的数据类型转换问题_第1张图片

  在该段代码中,只有语句2是对的,其他都是错的。

  1、当使⽤ +、-、*、/、%、运算操作时,遵循如下规则:

    ①只要两个操作数中有⼀个是double类型的,另⼀个将会被转换成double类型,并且结果也是double类型。

    ②两个操作数中有⼀个是float类型的,另⼀个将会被转换为float类型,并且结果也是float类型

    ③两个操作数中有⼀个是long类型的,另⼀个将会被转换成long类型,并且结果也是long类型

    ④其他情况(操作数为:byte、short、int 、char),两个数都会被转换成int类型,并且结果也是int类型。

    核心是:final修饰的变量,值和类型都不能发生变化。

  2、题目解析

    语句1:b1和b2都变为int型了,int+int=int,此时用b3(byte)来接收就是大类型转小类型(需要强转,否则有损失)

    语句2:b4,b5都是由final修饰,类型和值都不变,byte=byte+byte

    语句3:int+byte=int,用byte接收,还是需要强转。

    语句4:final修饰的是常量,不能出现在=左边

你可能感兴趣的:(笔试题总结,final关键字,面试题)