问答1 问答5 问答50 问答500 问答1000
网友互助专业问答平台

求大神,java的集合框架是什么意思?

提问网友 发布时间:2022-04-23 08:35
声明:本网页内容为用户发布,旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:1656858193@qq.com
4个回答
热心网友 回答时间:2022-04-18 09:00
Java平台提供了一个全新的集合框架。“集合框架”主要由一组用来操作对象的接口组成。不同接口描述一组不同数据类型。

Java 2集合框架图

  集合接口:6个接口(短虚线表示),表示不同集合类型,是集合框架的基础。

  抽象类:5个抽象类(长虚线表示),对集合接口的部分实现。可扩展为自定义集合类。

  实现类:8个实现类(实线表示),对接口的具体实现。

  在很大程度上,一旦您理解了接口,您就理解了框架。虽然您总要创建接口特定的实现,但访问实际集合的方法应该*在接口方法的使用上;因此,允许您更改基本的数据结构而不必改变其它代码。

  · Collection 接口是一组允许重复的对象。

  · Set 接口继承 Collection,但不允许重复,使用自己内部的一个排列机制。

  · List 接口继承 Collection,允许重复,以元素安插的次序来放置元素,不会重新排列。

  · Map接口是一组成对的键-值对象,即所持有的是key-value pairs。Map中不能有重复的key。拥有自己的内部排列机制。

  · 容器中的元素类型都为Object。从容器取得元素时,必须把它转换成原来的类型。

  Java 2简化集合框架图

集合接口

  1.Collection 接口

  用于表示任何对象或元素组。想要尽可能以常规方式处理一组元素时,就使用这一接口。

  (1) 单元素添加、删除操作:

   boolean add(Object o):将对象添加给集合

   boolean remove(Object o): 如果集合中有与o相匹配的对象,则删除对象o

  (2) 查询操作:

   int size() :返回当前集合中元素的数量

   boolean isEmpty() :判断集合中是否有任何元素

   boolean contains(Object o) :查找集合中是否含有对象o

   Iterator iterator() :返回一个迭代器,用来访问集合中的各个元素

  (3) 组操作 :作用于元素组或整个集合

   boolean containsAll(Collection c): 查找集合中是否含有集合c 中所有元素

   boolean addAll(Collection c) : 将集合c 中所有元素添加给该集合

   void clear(): 删除集合中所有元素

   void removeAll(Collection c) : 从集合中删除集合c 中的所有元素

   void retainAll(Collection c) : 从集合中删除集合c 中不包含的元素

  (4) Collection转换为Object数组 :

   Object[] toArray() :返回一个内含集合所有元素的array

   Object[] toArray(Object[] a) :返回一个内含集合所有元素的array。运行期返回的array和参数a的型别相同,需要转换为正确型别。
热心网友 回答时间:2022-04-18 10:18

    Java提供了数种持有对象的方式,包括语言内置的Array,还有就是utilities中提供的容器类(container classes),又称群集类(collection classes)。集合在java中非常重要,在讨论之前,先来看几个面试中的经典问题。 

    1 Collection 和 Collections的区别。 

    2 List, Set, Map是否继承自Collection接口。 

    3 ArrayList和Vector的区别。 

    4 HashMap和Hashtable的区别。 

篇尾有答案,我们开始正题。   

    集合Collection接口 

        --Collection 是任何对象组,元素各自独立,通常拥有相同的套用规则。Set List由它派生。

    基本操作  增加元素add(Object obj); addAll(Collection c); 

    删除元素 remove(Object obj); removeAll(Collection c); 

    求交集 retainAll(Collection c); 

    删除元素 remove(Object obj); removeAll(Collection c); 

    求交集 retainAll(Collection c); 

    访问/遍历集合元素的好办法是使用Iterator接口(迭代器用于取代Enumeration)

Public interface Iterator{
  Public Boolean hasNext(};
  Public Object next(};
 Public void remove(};
}

    集set 

        --没有重复项目的集合 

    有三种特定类型的集可用 

        HashSet-基于散列表的集,加进散列表的元素要实现hashCode()方法 

        LinkedHashSet-对集迭代时,按增加顺序返回元素 

        TreeSet-基于(平衡)树的数据结构   

        清单List 

        --位置性集合。加进清单的元素可以加在清单中特定位置或加到末尾 

有两个特定版本

    ArrayList(数组表)-类似于Vector,都用于缩放数组维护集合。区别:

        一.同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的 

        二.数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半 

    LinkedList(链表)-是双向链表,每个节点都有两个指针指向上一节点和下一节点。 

    用在FIFO,用addList()加入元素 removeFirst()删除元素

    用在FILO,用addFirst()/removeLast() 

    ListIterator提供双向遍历next() previous(),可删除、替换、增加元素 

    映射表Map 

    --用于关键字/数值对,像个Dictionary 

    处理Map的三种集合 

    关键字集KeySet() 

    数值集value() 

    项目集enrySet() 

    四个具体版本

    HashMap-散列表的通用映射表 

    LinkedHashMap-扩展HashMap,对返回集合迭代时,维护插入顺序 

    WeakHashMap-基于弱引用散列表的映射表,如果不保持映射表外的关键字的引用,则内存回收程序会回收它 

    TreeMap-基于平衡树的映射表   

    HashMap-散列表的通用映射表 

    LinkedHashMap-扩展HashMap,对返回集合迭代时,维护插入顺序 

    WeakHashMap-基于弱引用散列表的映射表,如果不保持映射表外的关键字的引用,则内存回收程序会回收它 

    TreeMap-基于平衡树的映射表 

    Collections类,用于同步集合,还能改变集合只读方式的类 

Map mp=new HashMap();
mp=Collections.synchronizedMap(mp); //生成线程安全的映射表
mp=Collections.unmodifiableMap(mp); //生成只读映射表

热心网友 回答时间:2022-04-18 11:53
就是你课本上学的那些队列啊, 栈啊, 链表啊, hash表, set, 这些所谓的集合, 数据的组织方式
java里有对应的实现好了的类, 你可以直接拿来用
java还提供了对集合的一些便利的操作方法, 比如说排序, 遍历等等

总之你不用再造一遍轮子了, 需要的时候拿来用
难道这就是框架
热心网友 回答时间:2022-04-18 13:44
框架是对某一类问题通用性的解决方案
java集合框架是对集合操作的通用性,共性处理方式/方法,进行总结基础上,写的代码,常用的有比如数组转换为集合,集合排序方法,复制等
可以参考java自带集合文档,也可以 看下百度百科 java集合框架介绍http://ke.baidu.com/link?url=SG0aQjqNSOAKBxTlNzH3rv5ka7SrjLz618z1hJ7KHBxpCpw4u818mHlCviStlgK8TGzHzmHnfN0moE7oVX4RiK

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

相关推荐
  • java集合框架是什么意思

    java集合框架是什么意思

    java集合框架是为表示和操作集合而规定的一种统一的标准的体系结构,任何集合框架都包含三大块内容,分别是对外的接口、接口的实现和对集合运算的算法。
    查看详情
  • java集合框架是啥意思

    java集合框架是啥意思

    java集合框架是为表示和操作集合而规定的一种统一的标准的体系结构,任何集合框架都包含三大块内容,分别是对外的接口、接口的实现和对集合运算的算法。
    查看详情
  • java集合框架的意思是什么

    java集合框架的意思是什么

    java集合框架是为表示和操作集合而规定的一种统一的标准的体系结构,任何集合框架都包含三大块内容,分别是对外的接口、接口的实现和对集合运算的算法。
    查看详情
  • java集合框架是什么意思

    java集合框架是什么意思

    java集合框架是为表示和操作集合而规定的一种统一的标准的体系结构,任何集合框架都包含三大块内容:对外的接口、接口的实现和对集合运算的算法。
    查看详情
  • 怎么理解java安全框架

    怎么理解java安全框架

    JAVA框架就是一些类和接口的集合,通过这些类和接口协调来完成一系列的程序实现,Java安全框架是指在用户使用过程中能够保证程序安全性的框架。
    查看详情
java中集合、集合类和集合框架是什么意思? java集合框架中,包括哪些接口和类? JAVA集合框架的未来容器 Java集合框架的优点是什么? 华为P30原装充电器的型号? 介绍一些Java集合框架方面的知识? 华为200325cp0能充华为p30pro手机吗? 请问P30Pro可以用P30的充电器充电吗?能的话是以多大的功率在充呢?_百... java集合框架是什么? 华为p30 pro 自带的可变电压充电器,可以给微软surface go充电吗?只考虑电压不考虑线 华为p30pro用什么充电器充电快? 5v-2.10A的充电器能给华为p30pro充电吗? 华为p30pro能否用66瓦充电器充电? 华为p30 pro原装充电器可以给荣耀magic2充电吗? 华为p30和p30pro充电器能通用吗? 华为p30pro充电线是5a还是3a? 我生产馒头的,我用的是老面(二次发面)加安琪发酵粉发酵法,这几天都发现我的馒头蒸好放在泡沫箱里会馊 包子馒头蒸熟后放进泡沫箱不久会粘在一起怎么办,特别是箱底那几层包子馒头被压扁成饼状且严重粘连 泡沫箱里能放热馒头吗 泡沫箱装馒头几天不坏 简述泛型集合框架相比于数组有什么好处? JAVA的集合框架中有那些类,他们都有那些区别 java框架和集合框架是一个概念吗?如同不同之间有什么区别 Java集合类框架的最佳实践有哪些? Java集合框架2 Java集合类框架的基本接口有哪些?有什么特点? 在Word文档里编辑文字的时候,为什么一修改,后面的字就自动删除? word中输入字时后面的老是被删掉,这是怎么回事? 怎么把压缩文件转换成EXE的? 怎么把.RAR的压缩文件变成.exe的安装文件? 怎样将RAR文件转化成EXE格式的文件 压缩文件如何修改成EXE rar文件怎么修改成exe文件 请问如何将RAR格式的文件压缩到电脑里或变为EXE格式 怎么把文件夹压缩成EXE安装包的格式? 亲豆网10怎样将压缩文件转换应用程序 怎样能让压缩文件变应用程序 怎样让压缩文件变成应用扩展程序? zip压缩包为什么解压出来是exe文件 部门职责的梳理流程,特别是仓库
Top