Java每日笔试题错题分析(6)
- 一、错题知识点前瞻
- 第1题
- 第2题
- 第3题
- 第4题
- 二、错题展示及其解析
- 第1题
- 第2题
- 第3题
- 第4题
一、错题知识点前瞻
第1题
被动引用(免初始化)
提示:
第2题
本题考查==的含义,对于两个引用变量,只有他们指向同一个引用时,==才会返回true
第3题
数组有length属性,字符串只有length()方法,str+='a’和str+="a"都是对的,但是如果a前面加以一个空格,那么只能用双引号了,代表字符串
第4题
ArrayList.asList返回的是Arrays中的一个内部类,也叫ArrayList,也实现了List接口,一旦对这个List做出结构性的改变,会出现异常
二、错题展示及其解析
第1题
原理:
被动引用(免初始化)
提示:
第2题
原理:
本题考查==的含义,对于两个引用变量,只有他们指向同一个引用时,==才会返回true。
解析:题目中"admin"指向堆内存字符串常量池里admin的地址,而String类的方法都是通过创建新的对象也就是new String()的方式返回的,因此userId.toLowerCase()指向的是这个字符串对象在堆内存中的地址。如果题目中isAdmin方法返回值更改为return userId.toLowerCase().equals(“admin”);,输出结果将变为true
第3题
原理:
数组有length属性,字符串只有length()方法,str+='a’和str+="a"都是对的,但是如果a前面加以一个空格,那么只能用双引号了,代表字符串
第4题
原理:
ArrayList.asList返回的是Arrays中的一个内部类,也叫ArrayList,也实现了List接口,一旦对这个List做出结构性的改变,会出现异常