前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JAVA集合框架

JAVA集合框架

作者头像
xiaozhangStu
发布2023-05-04 19:32:53
4300
发布2023-05-04 19:32:53
举报
文章被收录于专栏:xiaozhangStuxiaozhangStu

JAVA集合框架

Collection

定义

一个接口,目的是存储不唯一无序的对象

List

定义

一个继承Collection的接口,目的是存储不唯一有序的对象

公用方法
代码语言:javascript
复制
Object  remove(int index)//移除下标元素,并返回该元素
boolean remove(Object o)//移除某元素
boolean contains(Object o)//是否包含元素
Object get(int index)//获取某下标的元素
int size()//获取元素的个数
void add(int index,Object o)//在指定的索引添加元素
boolean add(Object o)//在末尾添加元素
//也就是说下面所有的实现类都有该方法   
ArrayList
定义

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

LinkedList
定义

采取链表的存储方式,插入、删除元素的效率比较高

个性方法
代码语言:javascript
复制
void  addFirst(Object o)//在首部添加元素
void  addLast(Object o)//在最后添加元素
Object  getFirst()//获取第一个元素
Object  getLast()//获取最后一个元素
Object  removeFirst()//移除第一个
Object  removeLast()//移除最后一个

Set

定义

一个继承Collection的接口,目的是存储唯一无序的对象

Map

定义

一个接口 ,目的是存储一组键值对象(key:value)

常用的方法
代码语言:javascript
复制
Object put(Object key, Object val)//已键值对的形式进行存储
Object get (Object key)//根据键取值
Object remove (Object key)//根据键删除键值对
int size()//返回元素的个数
Set keySet ()//返回键的set集合
Collection values ()//返回值的集合
boolean containsKey (Object key)//是否包含某个键映射的键值对
遍历map
迭代器遍历iterator遍历

1.获取iterator:使用Collection接口的iterator()方法

2.terator的方法

代码语言:javascript
复制
boolean hasNext()//判断是否存在另一个可访问的元素 
Object next()//返回要访问的下一个元素

3.举例

代码语言:javascript
复制
Set keys=dogMap.keySet();    //取出所有key的集合
Iterator it=keys.iterator();       //获取Iterator对象
while(it.hasNext()){
    String key=(String)it.next();      //取出key
    Dog dog=(Dog)dogMap.get(key);    //根据key取出对应的值
    System.out.println(key+"\t"+dog.getStrain());
}
增强for循环

举例

代码语言:javascript
复制
Set keys=dogMap.keySet();     
for(String key : keys) {
       Dog dog=(Dog)dogMap.get(key);
        System.out.println(key + "=" + value);
    }

泛型集合

由来

因为在集合操作的时候涉及到很多的强制类型转换的问题,所以在我们的jdk1.5后就使用了泛型改写了集合框架

举例
代码语言:javascript
复制
List <Dog> dogs = new ArrayList<Dog>();
//好处 1.无需强2.转类型有问题就主动报错,减少异常发生
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2023-02-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • JAVA集合框架
    • Collection
      • List
        • Set
          • Map
            • 泛型集合
            相关产品与服务
            对象存储
            对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档