使用 byte、short 和 char 毫无意义

No sense in using byte, short and char

我正在学习 JAVA OCA 认证的书。我在二元运算符的章节中。书中提到了以下规则。

byteshortchar 在使用二元运算符时将被提升为 int。

因此,目前,如果我定义并初始化一个 short 或 byte 类型的变量,它将自动转换为 int。 在书中,它说 = 赋值是一个二元运算符。

使用这些变量有什么意义吗?

如何在 java 中打印这种类型的变量?

此类变量在您定义它们时不会转换为 int。当它们与 & 运算符等二元运算符一起使用时,它们将被提升为 int。使用以下方法获取对象的 class 名称:

variablename.getClass().getName()

给定任何对象的实例,您可以调用它的 getClass() 方法来获取描述对象类型的 Class 对象的实例。

使用 Class 对象,您可以轻松打印其类型名称:

Integer number=Integer.valueOf(15);
System.out.println(number.getClass().getName());