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. RVCT编译错误 Cannot obtain license for Compiler

    找不到文件 找不到文件 Error: C9932E: Cannot obtain license for Compiler (feature compiler) with license versio ...

  2. Qt编写自定义控件37-发光按钮(会呼吸的痛)

    一.前言 这个控件是好早以前写的,已经授权过好几个人开源过此控件代码,比如红磨坊小胖,此控件并不是来源于真实需求,而仅仅是突发奇想,类似于星星的闪烁,越到边缘越来越淡,定时器动态改变边缘发光的亮度,产 ...

  3. linux vim基本操作

    vim 是一款功能强大的文本编辑器, 默认有三种模式: 命令模式, 插入模式, 编辑模式, 使用# vim file 打开一个文件时,默认进入命令模式, 不同模式直接的切换如下    a. 命令模式切 ...

  4. Node中使用MySQL报错:TypeError: Cannot read property 'query' of undefined

    Node中使用MySQL报错: TypeError: Cannot read property 'query' of undefined at /Users/sipeng/Desktop/彭思/201 ...

  5. Java下载HTTP URL链接示例

    这里以下载迅雷U享版为例. 示例代码: package com.zifeiy.snowflake.handle.filesget; import java.io.File; import java.i ...

  6. 使用Vue-Router的导航守卫-无限循环问题

    我在项目里面用到了的是全局守卫,beforeEach,方便管理 不过遇到了一个问题,就是在beforeEach()中设置好判断条件后出现了无限循环的问题 当时的代码如下: router.beforeE ...

  7. php 获取文件mime类型的方法

    php 获取文件mime类型的方法 使用fileinfo需要安装php_fileinfo扩展. 如已安装可以在extension_dir目录下找到php_fileinfo.dll(windows),f ...

  8. 自定义 Win10 系统鼠标右键发送到的选项

    系统默认的右键「发送到」菜单只有几个特定的项目,如果要想发送到其他目标,可通过在资源管理器地址栏中访问 C:\Users\用户名\AppData\Roaming\Microsoft\Windows\S ...

  9. php微信小程序生成二维码,出现乱码,{"errcode":44002,"errmsg":"empty post data"},'{"errcode":41001,"errmsg":"access_token missing hint: [OoC.2a0822e255]"}',以及其他的坑

    微信小程序的坑简直比我的头发还多,今天下午获取微信二维码,遇到的44002,41001,还有图片没法正常显示以及小程序参数获取的问题,接下来一一解决 首先获取微信token然后再获取二维码这个没什么好 ...

  10. golang之map的使用声明

    1.map的基本介绍 map是key-value数据结构,又称为字段或者关联数组.类似其它编程语言的集合,在编程中是经常使用到的 2.map的声明 1)基本语法 var map 变量名 map[key ...