早教吧 育儿知识 作业答案 考试题库 百科 知识分享

关于+=复合运算//在C#与java中,byteb=100;b=b+100;编译通不过(类型转换造成),而byteb=100;b+=100;能编译通过,能否给出详细解释。还请高手赐教。

题目详情
关于+=复合运算// 在C#与java中, byte b=100; b=b+100; 编译通不过(类型转换造成),而 byte b=100; b+=100; 能编译通过, 能否给出详细解释。 还请高手赐教。
▼优质解答
答案和解析
这类题目,反编译一下就可以找到答案了 对下面的类进行反编译 public class test{ public static void main(String args[]){ byte a = 30; a +=40; int b = 20; b = b+41; } } 得到 C:\java> javap -c test Compiled from "test.java" public class test extends java.lang.Object{ public test(); Code: 0: aload_0 1: invokespecial #1; //Method java/lang/Object." ":()V 4: return public static void main(java.lang.String[]); Code: 0: bipush 30 2: istore_1 3: iload_1 4: bipush 40 6: iadd 7: i2b 8: istore_1 9: bipush 20 11: istore_2 12: iload_2 13: bipush 41 15: iadd 16: istore_2 17: return } 由此可得出结论: b=b+100; 中,由于b+100后值已提升为int型,再赋给byte型当然不行 b+=100; 中,由反编译结果可以看出b+=100相当于b=(byte)(b+100) C#解释应该类似。
看了 关于+=复合运算//在C#与...的网友还看了以下:

苏格拉底名言“田野与树木没有给我一点教益,而城市的人们却赐给我颇多的教益”求英文.“田野与树木没有  2020-05-13 …

圣经中创世纪1;30说至于地上的走兽和空中的飞鸟,并各样爬在地上有生命的物,我将青草赐给它们作为食  2020-05-13 …

读济南的秋天,回答以下问题. 1.第一自然段作者幻想中的济南的特征是怎样的?2.如何理解第二自然段  2020-05-17 …

用“/”给下面句子断句季康子问仲由可使从政也与子曰由也果于从政乎何有曰赐也可使从政也与曰赐也达于从  2020-06-20 …

()宝,()客,()阳,()重,给括号里填写同一个字,使其成词,请赐给答案,()宝,()客,()阳  2020-07-03 …

材料三太和十八年(公元494年)十二月革衣服之制十九年下诏“不得以北俗语言于朝廷,若有违者……”九  2020-07-11 …

矿物资源不是上帝的恩赐.赐:1.指给予的财物和好处.2.赏.给予空气与滋养的生命是一体的.养:1.美  2020-11-05 …

阅读下面的文字,写一篇不少于800字的作文上帝召开一次会议,了解自从赐给了动物们翅膀后,阅读下面的文  2020-11-24 …

“上帝在赐给我们青春的同时,也赐给我们青春痘”,对这句话的最佳理解是()A.中学生每个人脸上都会长“  2020-12-22 …

济南的冬天!“上帝把夏天的艺术赐给瑞士,把春天的赐给西湖,秋和冬的全赐给了济南.”这句话的言外之意是  2020-12-24 …