内容总结
作业要点讲解
作业一
for 循环
一维数组(存放十二个月的每个月的天数) – 此方法简单
分两个数组:闰年和平年
也可以用switch case分支结构
作业二
- 双重for循环
作业三
拆解步骤:先生成一个1~33的随机数 ——> 生成第二个1~33的随机数,同时判断是否重复,重复后重新生成,以此类推 …
作业四
扩容时,利用移位运算符
假设原数组的长度是 old,那么old>>1 = 0.5倍old,再加上原来的old,为1.5倍old
即 new = old + old>>1 = 1.5 old
作业五
二维数组
打印十六进制
0 1 2 3 4 5 6 7 8 9 a b c d e f
常见笔试题
笔试题一
- 考察的是二进制的权重
- 1 、2、4、8、16、32、64
笔试题二
&& 逻辑与 有短路特性
& 按位与 对二进制按位操作,无短路特性
笔试题三
i++:先赋值再自加1
++i:先自加1再赋值
问:哪个性能更高
答:效率差可以忽略,但是严格来说,++i 效率更高
因为:i++是先找一个临时变量,加1,然后在赋值
++1是直接加1,然后赋值
笔试题四
考察移位运算符,左移一位 *2,左移二位 *4,左移三位 *8
笔试题五
法一:
a = a + b = 8
b = a - b = 8 - 3 = 5
a = a - b = 8 - 5 = 3
法二:
用异或运算符 ^:相同为0,不同为1
a = 3 = 0011
b = 5 = 0101
a = a ^ b = 0011 ^ 0101 = 0110 = 6
b = a ^ b = 0110 ^ 0101 = 0011 = 3
a = a ^ b = 0110 ^ 0011 = 0101 = 5