byte i=127;i=i+1;这两个语句可否成功编译 java

来源:百度知道 编辑:UC知道 时间:2024/06/22 10:11:10
byte 的范围从-128~127,加一后 i 溢出,i会从byte型自动转换为int型吗? 解释详细些 谢谢先
han!见笑了,我以前学过vb,现在学java有点摸不着北,下载了一个jdk5.0,可惜人家嫌我菜,愣不甩我。我左看右看,界面上菜单,工具,命令符很庞大,在我只有java教程第2章的水平下,还没来得及实践操作,我会努力的。

不会的,就像你说的,会出现溢出。
在java中,类型的转换包括两种。
一种是自动类型转换、一种是强制类型转换。
自动类型转换,是java帮你自动完成的。例如
int a;double b=12; a+b就变成了double型。
强制类型转换,
方法如 (高级别的数据类型) 低级别的数据
事例:
int a;double b=100;a=(int)b;a=100

不会啊 不行你试试 应该是输出 -128
//测试代码
public class TestByte{
public static void main(String args[]){
byte a=127;
a++;
System.out.println(a);
}
}