|
- 1.(集合框架)下面都属于线程安全的类是(BD )。
- 线程同步就是线程安全的
- A.ArrayList//不同步
- B.Vector//同步,其余功能与ArrayList一样
- C.HashMap//不同步
- D.HashtableA.//同步,其余功能和Hashtable一样
- 2.(集合框架)ArrayList的初始化内容如下:
- ArrayList list = new ArrayList();
- list.add("java");
- list.add("aaa");
- list.add("java");
- list.add("java");
- list.add("bbb");
- 下面可以删除list中所有的“java”的代码是:(A)
- A.for (int i = list.size() - 1; i >= 0; i--) {//规定是逆序删除,每删除一个,会重新排序
- if ("java".equals(list.get(i))) {
- list.remove(i);
- }
- }
- B.for (int i = 0; i < list.size(); i++) {
- if ("java".equals(list.get(i))) {
- list.remove(i);
- }
- }
- C.list.remove("java"); //只能删除第一个
- D.list.removeAll("java");//括号中的参数是集合的类型
- 3.下面的代码用于输出字符数组ch中每个字符出现的次数,应该填入的代码是(D)
- public static void main(String[] args) {
- char[] ch = { 'a', 'c', 'a', 'b', 'c', 'b' };
- HashMap map = new HashMap();
- for (int i = 0; i < ch.length; i++) {
- < 填入代码 >
- }
- System.out.println(map);
- }
- //map中没有contains方法,这个方法只有List和Set中有
- A.if (map.contains(ch[i])) {
- map.put(ch[i], map.get(ch[i]) + 1);
- } else {
- map.put(ch[i], 1);
- }
- B.if (map.contains(ch[i])) {
- map.put(ch[i], (Integer) map.get(ch[i]) + 1);
- } else {
- map.put(ch[i], 1);
- }
- C.if (map.containsKey(ch[i])) {
- map.put(ch[i], (int) map.get(ch[i]) + 1);
- } else {
- map.put(ch[i], 1);
- }
- D.if (map.containsKey(ch[i])) {
- map.put(ch[i], (Integer) map.get(ch[i]) + 1);
- } else {
- map.put(ch[i], 1);
- }
- 4.(集合框架) 题示代码的功能为:对于一个存放Integer对象的ArrayList,内容为:{1,2,3 },对其进行循环遍历:
- List list=new ArrayList();
- list.add(1);
- list.add(2);
- list.add(3);
- for(int i=0;i<《插入代码1》;i++){
- Integer obj=(Integer)《插入代码2》;
- System.out.println(obj);
- }
- 那么《插入代码1》和《插入代码2》处的代码分别为(C)
- A. list.getObject(i) list.length()
- B. list.length() list.getObject(i) //集合没有length,只要数组才有,集合是size()
- C. list.size() list.get(i)
- D. list.get(i) list.size()
- 5.题示代码的功能为:对于一个存放Person对象的ArrayList进行循环遍历,并取到每个Person对象的idCard和userName。
- public class Person{
- private Long idCard;
- pirvate String userName;
- //一下是getter和setter方法
- ……
- }
- List<Person> list=new ArrayList<Person>();
- Person p1=new Person();
- p1.setIdCard(new Long(1001));
- p1.setUserName(“terry”);
- Person p2=new Person();
- p2.setIdCard(new Long(1002));
- p2.setUserName(“tom”);
- list.add(p1);
- list.add(p2);
- for(《插入代码》){
- System.out.println(person.getIdCard()+”:”+person.getUserName());
- }
- 那么《插入代码》处的代码为(D)
- A. List list:person
- B. List list:Person //遍历list中的Person
- C. Person person:List
- D. Person person:list//在list中遍历person
- 6.已知类Foo的定义如下:
- public class Foo {
- int value;
- Foo(int value) {
- this.value = value;
- }
- public boolean equals(Object obj) {
- if (obj instanceof Foo) {
- Foo foo = (Foo) obj;
- return value == foo.value;
- } else {
- return false;
- }
- }
- 运行下面程序段:
- ArrayList list = new ArrayList();
- HashSet set = new HashSet();
- list.add(new Foo(1));
- set.add(new Foo(1));
- System.out.println(《插入代码》);
- 如果控制台输出的结果是true,false,那么《插入代码》处应填入的代码是(C)
- A. list.contains(new Foo(1)) + ","+ set.contains(new Foo(1))
- B. set.contains(new Foo(1)) + ","+ list.contains(new Foo(1))
- C. new Foo(1).equals (new Foo(1)) + ","+ list.contains(new Foo(1))
- D. new Foo(1).equals (new Foo(1)) + ","+ set.contains(new Foo(1))//没有重写hashCode()方法
- 7.(集合框架)题目代码的功能是:采用Iterator进行循环遍历到集合中的每一个元素,并将其移除,《插入代码》处应填入的代码是(A)
- ArrayList list = new ArrayList();
- list.add("java");
- list.add("php");
- list.add(".net");
- 《插入代码》
- A. Iterator it=list.iterator();
- while(it.hasNext()){
- it.next();
- it.remove();
- }
- B. Iterator it=list.iterator();
- while(it.hasNext()){
- it.remove();
- }
- C. Iterator it=list.iterator();
- while(it. hasNext()){
- Object obj=it.next();
- list.remove(obj);
- }
- D. Iterator it=list.iterator();
- while(it.hasNext()){
- list.remove();
- }
- 8.题示代码的功能为:循环遍历输出Map当中的每一个元素
- Map<String,Integer> map=new HashMap<String,Integer>();
- map.put(“jessica”,100);
- map.put(“tom”,200);
- map.put(“den”,300);
- Set《插入代码1》 set =《插入代码2》;(D)
- for (《插入代码3》 per : set) {
- System.out.println(per.getKey() + ":" + per.getValue());
- }
- A.
- <Entry>
- map.keySet()
- Entry
- B.
- <Entry>
- map.entrySet()
- Entry
- C.
- <Map.Entry<String, Integer>>
- map.keySet()
- Map.Entry<String, Integer>
- D.
- <Map.Entry<String, Integer>>
- map.entrySet()
- Map.Entry<String, Integer>
- 9.请看一下代码:(A)
- Map<String,Double> map=new HashMap<String,Double>();
- map.put(“tom”,123.6);
- map.put(“jim”,234.5);
- map.put(“terry”,45.3);
- 《插入代码》
- 《插入代码》处要实现的功能是把key为“jim”的value值在原有数字的基础上添加100
- A. map.put(“jim”,map.get(“jim”)+100);
- B. map.set(“jim”,map.get(“jim”)+100);
- C. map.put(“jim”,234.5);
- D. map.set(“jim”,234.5);
- 10.下列代码的运行结果是(“_”表示空白): (B)
- public class Base{
- private void test() {
- String aStr = "_One_";
- String bStr = aStr;//改变时候创建了新的对象,所以以前的没变化
- bStr =aStr.trim();
- System.out.println("[" + aStr + "," + bStr + "]");
- }
- static public void main(String[] a) {
- new Base().test();
- }
- }
- A. [One,_One_]
- B. [_One_,One]
- C. [One,One]
- D. [_One_,_One_]
复制代码 |
|