java解惑------多重转型(问题)

xiaoxiao2021-11-25  82

转型用于将一个数值从一种类型转换到另一种类型,下面的示例程序输出的结果是什么呢?

public class Multicast{ public static void main(String[] args){ System.out.println((int)(char)(byte) -1); } }

这个程序从int数值-1开始,然后从int转型为byte,之后转型到char,最后转型到int。第一个转型将数值从32位窄化为8位,第二个转型将数值从8位拓宽为16位,最后一个转型又将数值从16位拓宽回到32位,这个数值最终回到可起点么?运行该程序,就会发现,它打印的是65535。

转载请注明原文地址: https://www.6miu.com/read-4837813.html

最新回复(0)