一、选择题
1.C 2.D 3.A D 4.B 5.C
二、简答题
1.简述 Java 集合框架的三大接口及其区别
List
接口存储一组不唯一,有序(插入顺序)的对象
Map
HashMap是Map接口中最常见的实现类
存储一组成对的键-值对象,提供key(键)到value(值)的映射,通过key来索引,key不允许重复,value允许重复,添加的对象将转换为Object类型
Set
接口存储一组唯一、无序的对象
2.根据你的理解,请说明ArrayList和LinkedList的区别
ArrayList实现了长度可变的数组,在内存中分配连续的空间。遍历元素和随机访问元素的效率比较高
LinkedList采用链表存储方式。插入、删除元素时效率比较高
3.请说明以下这段 Java代码是否存在错误,如果存在,请改正并给出运行结果;如果不存在,请给出运行结果
编译时发生错误,pList.get(i)需强转为字符串类型
改为
import java.util.*;
public class testlist {
public static void main(String[] args) {
List<String>list = new ArrayList<String>();
list.add("a");
list.add("b");
list.add("c");
print(list);
}
public static void print(List pList) {
for (int i = 0; i < pList.size(); i++) {
String string = (String) pList.get(i);
System.out.println(string);
}
}
}
输出结果为abc
4.创建一个类 Queue 代表队列 添加add和get方法 并验证
import java.util.LinkedList;
import java.util.List;
public class queue {
public static void main(String[] args) {
LinkedList link = new LinkedList();
link.addFirst("d");
link.addFirst("m");
link.addFirst("n");
link.addFirst("d");
link.addFirst("w");
link.remove("w");
for (Object queue:link) {
System.out.print(queue);
}
}
}
5.创建一个HashMap对象 并在其中添加一些学员和分数,key为学员姓名 value为学员分数
import java.util.HashMap;
import java.util.Hashtable;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
public class hashmap {
public static void test() {
Map map = new Hashtable();
map.put("张三",95);
map.put("李四",60);
map.put("赵六",23);
map.put("王五",75);
map.put("钱七",80);
Set<Entry> entrys = map.entrySet();
for (Entry entry : entrys) {
System.out.println(entry.getKey() + ",分数" + entry.getValue());
}
}
public static void main(String[] args) {
test();
}
}