20165223 week3蓝墨云测试总结

1. 表达式0xaa | 0x55的值为

答案:

解析:
0xaa用二进制表示为10101010,0x55用二进制表示为01010101,按位或后为11111111,十进制表示为255,十六进制表示为0xFF

2. 表达式15&250的值为

答案:

解析:
我认为这道题的正确答案应该是10,但选项里面没有,可以确定给出的答案是错误的

3. 下列说法错误的是

答案:

解析:
B项:“\”在java中有特殊含义,表示转义字符,因此输出时需要再次转义;C项:char类型是无符号的,与short类型不一样

4. 下列说法正确的是

答案:

解析:
C项:精度方面,0.00和0是一致的,此外0.5和0.5f也是一致的,但0.4和0.4f就不一样了

可以延伸到这一题:

这题中0.5在float和double中的范围都可以用二进制精确表示,因此相等

5. 下列说法错误的是

答案:

解析:
a[1]的值是0。

  • 这是数组的声明,3表示数组的长度。
    • 声明方法1:int[] a=new int[length]; a[0]=1;
    • 声明方法2:int[] a={1,2,3};
    • 声明方法3:int[] a; a=new int[length];
  • 初始化时一定要指明数组长度,或像声明方法2那样间接指明长度
  • 若没有进一步赋值,将会创建3个可以存放int变量的内存空间,初始值都为0:a[0]=0; a[1]=0; a[2]=0;

6. 下列初始化语句错误的是

答案:

解析:
A项:定义的是char类型数组,赋值是String类型,char只能用单引号' ',表示单个字符,不能表示字符串,错;B项同上;D项:'hello'不是char类型,char类型只有一个字符,也不是String类型,String类型使用“hello”

7. 将数组A复制到数组B

答案:

解析:
数组的复制:

  • System.arraycopy(src, srcPos, dest, destPos, length);
    • src - 源数组。
    • srcPos - 源数组中的起始位置。
    • dest - 目标数组。
    • destPos - 目标数据中的起始位置。
    • length - 要复制的数组元素的数量。

8. 下列说法正确的是

答案:

解析:
这道题答案也出错了,正确答案应该是ABD,C项中排序方法是选择法排序而不是冒泡法排序

  • 选择排序与冒泡排序
    • 选择排序:先逐个遍历,选出最值,将最值与第一个元素位置交换,再进行下一轮遍历(此时就不用再看已经选出来的第一个最值)
    • 冒泡排序:比较后若发现较小的元素在后面,就交换两个相邻的元素
posted @ 2018-03-25 22:00  乐十六君  阅读(1187)  评论(0编辑  收藏  举报