我与夏风皆过客,惟愿博肖揽星河!

xzwyb

导航

list

1.以下代码的执行结果是?【单项选择题】【简单】

public class Example {

 public static void main(String[] args) {

  String s1 = "abc";

  String s2 = "def";

  Stack<String> stack = new Stack<String>();

  stack.push(s1);

  stack.push(s2);

  try {

   String s3 = stack.pop() + stack.peek();

   System.out.println(s3);

  } catch (Exception e) {

   // TODO: handle exception

  }

 }

}

A.abcdef

B.defabc

C.abcabc

D.defdef

答案:B

2.集合中Set接口的特点是【单项选择题】【简单】

A.不允许重复元素,元素有顺序

B.允许重复元素,元素无顺序

C.允许重复元素,元素有顺序

D.不允许重复元素,元素无顺序

答案:D

3. List接口的特点是哪项?【单项选择题】【简单】

A.不允许重复元素,元素有顺序

B.允许重复元素,元素无顺序

C.允许重复元素,元素有顺序

D.不允许重复元素,元素无顺序

答案:C

4. 创建一个只能存放String的泛型ArrayList的语句是哪项【单项选择题】【简单】

A.ArrayList<int> al = new ArrayList<int>();

B.ArrayList<String> al = new ArrayList<String>();

C.ArrayList al = new ArrayList<String>();

D.ArrayList<String> al = new List<String>();

答案:B

5.下列代码执行后的输出是哪项?【单项选择题】【简单】

public class Example {

 public static void main(String[] args) {

  List<String> al = new ArrayList<String>();

  al.add("1");

  al.add("2");

  al.add("2");

  al.add("3");

  System.out.println(al);

 }

}

A.[1,2,3]

B.[1,2,3,3]

C.[1,2,2,3]

D.[2,1,3,2]

答案:C

6. 现有:list是一个合法的集合引用,getCollection()返回一个合法集合的引用,以下语句哪些是合法的?【多项选择题】【简单】

A.for(Object o : list)

B.for(Object o : getCollection())

C.for(Object o : list.iterator())

D.for(Iterator I;list.iterator();i.hasNext())

答案:A、B

7. Vector、ArrayList、LinkedList的区别【简答题】【简单】

ArrayList:(1)底层实现是数组,查找快,添加和删除慢。(2)是非线程安全(3)扩容方式:原来数组长度1.5倍

LinkedList:(1)底层使用双链表存储,所以查找慢(LinkedList不能随机访问,从开头或结尾遍历列表),添加和删除快(添加和删除操作快,但是定位目标元素慢)(2)是非线程安全(3)不存在扩容操作

Vector:(1)底层都是由数组实现的(2)同步的,线程相对安全,效率相对较低(3)默认是原来数组长度的2倍

8.下列代码的执行结果是?【简答题】【高级】

public class Example {

 public static void main(String[] args) {

  List list = new ArrayList();

  list.add("a");

  list.add("b");

  list.add("c");

  List<Integer> intList = list;

  for (int i = 0; i < list.size(); i++) {

   System.out.println(intList.get(i));

  }

 }

}

答案:a b c

9、Collection 接口的特点是元素是  无序可重复 
10、List 接口的特点是元素   有  (有|无)顺序,  可以  (可以|不可以)重复;
11、Set 接口的特点是元素  无  (有|无)顺序,  不可以  (可以|不可以)重复;

12、完成如下功能

  • import java.util.LinkedList;
    public class DogListTest {
        public static void main(String[] args) {
            //1.创建集合对象
            LinkedList<Dog> linkedList = new LinkedList<>();
            //2.创建多个狗狗的对象
            Dog d1 = new Dog("小七", "柯基");
            Dog d2 = new Dog("小八", "拉布拉多");
            Dog d3 = new Dog("小九", "金毛");
            Dog d4 = new Dog("小十", "吉娃娃");
            //3.把对象添加到集合中   add()
            linkedList.add(d1);
            linkedList.add(d2);
            linkedList.add(d3);
            linkedList.add(d4);
            //4.获取狗狗的总数  size()  
            System.out.println("共计有" + linkedList.size() + "条狗狗");
            System.out.println("分别是:");
            //5.遍历
            for (Dog d : linkedList) {
                System.out.println(d);
            }
            //6.删除第一个位置的狗狗  remove(int index)
            //7.删除指定的狗狗  美美  remove(Object o)
            System.out.println("第一条狗狗的昵称:" + linkedList.getFirst().getName());
            //System.out.println("第一条狗狗的昵称:" + linkedList.get(0).getName());
            System.out.println("最后一条狗狗的昵称:" + linkedList.getLast().getName());
            //System.out.println("最后一条狗狗的昵称:" + linkedList.get(linkedList.size()-1).getName());
            //Dog dogLast=(Dog)linkedList.getLast();
            //System.out.println("最后一条狗狗的昵称:"+dogLast.getName());
            //8.判断集合中是否包含指定的狗 contains
            System.out.println("集合中是否包含小八:" + linkedList.contains(d2));
            linkedList.remove(d1);
            linkedList.remove(d4);
            System.out.println("删除部分狗狗后还有" + linkedList.size() + "条狗狗" + "\n分别是:");
            for (Dog dog : linkedList) {
                System.out.println(dog);
            }
        }
    }

posted on 2022-04-12 21:10  B2328X  阅读(127)  评论(0编辑  收藏  举报