Integer l=new Integer(128);
System.out.println("Integer is: "+l);
Byte b=new Byte(l.byteValue());
System.out.println(l+" to byte: "+b);
Integer l2=new Integer(b.intValue());
System.out.println(b+" to Integer: "+l2);
[list]打印结果如下:
Integer is: 128
128 to byte: -128
-128 to Integer: -128
[/list]
问题:为什么Integer to byte, byte to Integer 无法转化成最初结果?
原来跟Byte -128~127 的范围有关...
本文通过一个具体的Java代码示例展示了从Integer到Byte再转回Integer过程中可能出现的数据转换问题。问题核心在于Byte类型的取值范围限制,导致了转换过程中的数据丢失。
3378

被折叠的 条评论
为什么被折叠?



