java 的JCF集合框架

首次看到JCF并不知道是什么意思,度娘一下做更深一步的了解,才明白JCF是我们平常经常用的集合框架,根据自己的理解做一下的总结,有什么问题,请大家指正。

集合:也就是我们平常说的容器,其相当于一个容器,用来装东西的,里面可以放任意对象。

框架:我们为了解决问题,预先设计好的具有继承,实现关系的类和接口。

泛型:允许在定义某些类和接口的时候指定要使用的数据类型,比如,ArrayList<String> al = new ArrayList<String>();<>中String就是泛型。目前只有Collection接口里面实现的方法或者接口中才有这些泛型,在数组中暂时没有泛型。Collection 和Arrays类是一个算法类,里面提供了大量的方法。

1、Iterator类 是一个迭代器,使用格式如 Iterator it = set.iterator; while(it.hashNext()){ System.out.println(it.next());}

2、for循环,简化的一种for循环,可以遍历类中的所有元素 for(容器中元素类型 引用的名字:容器的具体对象){System.out.println(引用的名称)}


核心接口Collection接口,有两个直接的之类接口:Set List 还有一个间接的Map接口


Set集:该容器中对象没有顺序,而且不能重复;

List:该容器中对象有顺序,对象可以重复;

Map中存放的是键值对,键唯一值可以重复,且没有顺序。

平时使用的List接口中已经实现的类,主要有:

(1)ArrayList类 该类的低层依然是数组,但可以存放不同类型的数据;容器大小根据实际情况而自动变化。但没有克服连续的地址空间这个问题。

(2)LinkedList类 使用和ArrayList类差不多,只是此类实现了双向链表功能,而且存放的对象都在独立的空间中,通过对象前后的存放的上个数据的引用和下个数据的引用来实现,对象之间相互关联。

(3)vector和stack类 和ArrayList差不多,但比较老,这种类具有线程安全性,并且效率低下。

都有以下使用方法:add();get(index);remove(index);size();isEmpty();contains(obj);addAll(Collection c );我们查询时经常使用ArrayList,增删查改的时候,删除比较频繁时用LInkedList


Set集合

HashSet类,里面的对象不允许重复,且没有顺序,允许有null元素;

TreeSet类,里面对象也不重复,且按照自然排序来排的,不允许有null

方法有:add(); remove();只能查找全部对象,通过for循环来实现,或迭代器Iterator。


HashMap类,容器中存放的是键值对,也叫K-V对,存放的对象没有顺序,但键是唯一的,值不唯一。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值