1.容器指的是可以容纳其他对象的对象。

2.collection/set/list的联系和区别?

(1)collection是Java集合顶级接口,存储一组不唯一,无序的对象;

(2)list接口和set接口是collections接口的两个子接口;

(3)list存储一组不唯一,有序(插入顺序)的对象;

Set接口存储一组唯一,无序的对象;

3.set和list的特点与区别?

(1)list:

1)是有序的collection,使用此接口能够精确的控制每个元素插入的位置。用户能够使用索引来访问list中的元素,这类似于Java的数组。

2)凡是可以操作索引的方法都是list接口特有方法。

(2)set:

1)接口存储一组唯一、无序的对象(存入和取出的顺序不一定一致)。

2)操作数据的方法与list类似,set接口不存在索引相关的方法。

4.collection接口常用的方法;

Add(Object obj);添加,存储的是对象的引用;

Size():容器中实际的元素个数;

Remove(Object obj):删除一个元素;

Remove(Collection c):删除与集合C中元素相同的元素;

RetainAll(Collection c):只保留当前集合与集合C中的相同的元素;

Contains(Object obj):判断集合中是否存在元素obj;

isEmpty():判断集合是否为空;

Iterator():生成此集合的迭代器;

5.addAll(c)是把集合C中的元素添加到集合C2里;

Collection c = new HashSet();

Collection c2 = new HashSet();

Apple a = new Apple();

c.add(a);

c2.addAll©;

//增加另一个容器中的所有元素!

C2.add(c)是把集合c当做一个元素添加到集合c2里;

Collection c = new HashSet();

Collection c2 = new HashSet();

c.add(a);

c2.add(c);

6:

Object[] o0bjArr = new Object[5];

objArr[0] = 56;

objArr[1] = 123;

objArr[2] = “HelloWorld”;

objArr[3] = new Dog();

objArr[4] = new Cat();

7.  List中

Add(int index,E element):把元素element添加到索引为index的位置;

Get(int index):得到索引为index的元素。

8.ArrayList和LinkedList:

两者都实现了list接口,都具有list中元素有序、不唯一的特点。

ArrayList实现了长度可变的数组,在内存中分配连续空间。遍历元素和随机访问元素的效率比较高;

0

1

2

3

4

5

aaaa

dddd

cccc

aaaa

eeee

dddd

LinkedList采用链表存储方式。插入、删除元素时效率比较高。

9.ArrayList实现了长度可变的数组,在内存中分配连续空间,遍历元素和随机访问元素的比较高。

add(int index,Object obj)

addAll(int index,Collections c)

remove(int index)

set(int index,Object obj):使用元素obj替代索引位置上的元素。

Get(int index)

subList(int beginIndex,int endIndex);

Java面试容器,collection,list,set的更多相关文章

  1. Java面试-容器的遍历

    当我们用增强for循环遍历非并发容器(HashMap.ArrayList等),如果修改其结构,会抛出异常ConcurrentModificationException,因此在阿里巴巴的Java规范中有 ...

  2. 200个最常见的JAVA面试问题(附答案)

    本文内容: 20个最常见的JAVA面试问题(附答案) 13个单例模式JAVA面试问题(附答案) 说说JVM和垃圾收集是如何工作的(附答案) 说说如何避免JAVA线程死锁(附答案) Java中HashS ...

  3. java容器-Collection

    1.介绍    collection<E>是java中容器的最主要的接口,该接口继承于Iterable<E>,使得java中所有实现Collection<E>的容器 ...

  4. 转:最近5年133个Java面试问题列表

    最近5年133个Java面试问题列表 Java 面试随着时间的改变而改变.在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来 ...

  5. Java面试葵花宝典

    面向对象的特征有哪些方面  1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题,而6. 只是选择其中的一 ...

  6. java面试和笔试大全 分类: 面试 2015-07-10 22:07 10人阅读 评论(0) 收藏

    2.String是最基本的数据类型吗? 基本数据类型包括byte.int.char.long.float.double.boolean和short. java.lang.String类是final类型 ...

  7. Java面试宝典2013版(超长版)

    一. Java基础部分......................................................................................... ...

  8. 近5年133个Java面试问题列表

    Java 面试随着时间的改变而改变.在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来越高级,面试官问的问题也更深入. 在我 ...

  9. java 面试

        115个Java面试题和答案——终极列表(上) 本文我们将要讨论Java面试中的各种不同类型的面试题,它们可以让雇主测试应聘者的Java和通用的面向对象编程的能力.下面的章节分为上下两篇,第一 ...

随机推荐

  1. SpringCloud学习成长之路七 高可用配置中心

    上一篇文章讲述了一个服务如何从配置中心读取文件,配置中心如何从远程git读取配置文件,当服务实例很多时,都从配置中心读取文件,这时可以考虑将配置中心做成一个微服务,将其集群化,从而达到高可用,架构图如 ...

  2. 常用SQL50句

    Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 问题 ...

  3. iOS面霸计划(难度)

    一.面试题 1.Xcode项目的目录结构是怎么分组的? 2.简单介绍下在真机上调试开发证书申请流程. 3.按Home键时,怎么保存程序运行状态 4.当程序运行过程中,按下home键以后,ios程序会调 ...

  4. input标签自动填充问题

    <input type='text' placeholder='手机号' /> <input type='text' placeholder='地址' /> <input ...

  5. POJ2449 【第k短路/A*】

    题目链接:http://poj.org/problem?id=2449 题目大意: 给出n个点,m条有向边,最后一行给出起点到终点的第k短路.求长度. 题解思路: 这是我第一道第k短路题以及A*算法的 ...

  6. 乐字节Java变量与数据结构之二:Java常量与变量

    大家好,小乐又来给大家讲述Java基础知识.上次说了乐字节Java变量与数据类型之一:Java编程规范,关键字与标识符,这次将接着往下说,谈谈Java常量与变量. 1.常量 1).定义 在程序执行的过 ...

  7. SpringBoot(三)手写starter pom自动配置

    思想:主要是EnableAutoConfiguration在启动的时候会扫描spring.factories并加载 1在resource下面新建META-INF/spring.factories 2在 ...

  8. 整合thymeleaf

    1.导入thymeleaf依赖 2.controller类 (1)模板 导入命名空间,xmlns:th="http://www.thymeleaf.org" (2)ModelAnd ...

  9. SAS学习笔记39 MINOPERATOR | NOMINOPERATOR

    MINOPERATOR(可理解为Macro IN Operator的简写,帮助大家记忆)系统选项用于控制是否在宏程序中是否可以用IN操作符或#操作符,默认值为NOMINOPERATOR.需要注意的是, ...

  10. Struts2简介、初步使用

    今日分享的是楼楼新学的一个框架,Struts2: 一:Struts2简介: Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2 ...