本帖最后由 Vision-V 于 2016-7-6 00:26 编辑
①byte b1 = 3;
②byte b2 = 4;
③byte b3 = b1 + b2;
这里③不对哦~
java是一种强类型语言.基本数据类型中,每一个类型占得字节大写都是固定的,内存里就开辟固定的空间来存放这个数据,它并不知道你即将键盘录入的值是多少,但是它已经准备好了容器.
上面的③,byte类型的数据在运算时会自动转化为int类型的,因此③式左边是byte类型,只有1个字节,而右边有4个字节,塞不下~所以③式子如果需要强制赋值给b3 的话,右边需要强制转换数据类型.byte b3 = (byte)(b1 + b2);
下面的式子
int x=sc.nextInt();
int y=sc.nextInt();
int sum=x+y;
这里是两个变量x,y接收键盘录入的数值,因为你使用的键盘录入方法是nextInt();这个只能接收输入的整数,那么用int x容器来接收刚好,下面的y同理, int sum=x+y;这里只是一个算式,系统不管你两次录入的值相加多少,你使用了int类型的数据来接收这个和,那系统帮你开辟这个空间,给你一个容器,你要是输入很大了,它就提醒你,警告你,如果在int类型的范围内,它就输出结果给你看~
|