这边我得注意一下, ~ 按位取反操作后得到的还是补码,而看运算结果时看的是原码。
这边我又出错了, 反码是符号位不变,其他位按位取反的,我把符号位也改变了,所以差一个符号。
>>算术右移,最特殊的,低位溢出后,补的是符号位。只有两个>>,应该是比较常用的。
<<这个是算术左移。
>>>这个是逻辑右移,因为算术右移比较特殊,所以有个逻辑右移,它有三个>>>。
注意没有<<<,因为逻辑左移和算术左移实现相同。
java在/这个操作符的两边出现小数时不会报错,它会依照一个公式,a % b = a - (int)a / (int)b * b;
结果可以为小数。
这作业错误横出啊,不要骄傲自大,再简单的题也要认真分析。
这边首先是++i,先自加,然后i就变为了67,后面的那个i已经变了,所以是67*2.
这边我C和E错了。
先看C, double num3 = 3d;
这边的d是double类型的意思,所以是对的。
再看E,E中的i是整型,整型给一个char肯定是不行的,不能把大的放到小的里面。
String转double需要用到Double类中的parseDouble这个方法。
char转String只需要加上双引号。