8:Java Conllections FrameWork-Java API 实战(上)

简介: 8:Java Conllections FrameWork-Java API 实战

1. 原生数组带来的问题,抛出问题


  • 原生数组容易造成超出边界,如果非要使用传统的数组,增删改查,就要用到数据结构,非常复杂


  • CRUD是指在做计算处理时的增加(Create)、读取查询(Retrieve)、更新(Update)和删除(Delete)几个单词的首字母简写


由此引出Java Conllections FrameWork即Java集合框架,也可称为函数库



2. Conllections家族


  • Java集合框架是一个包含一系列实作可重复使用集合的数据结构的类别和界面集合


  • Java集合大致可以分为两大体系,一个是Collection,另一个是Map


这里是引用java.util.Collection下的接口和继承类关系简易结构图:


java.util.Map下的接口和继承类关系简易结构图:


3. 黑帮的帮规


  • lterables集合层次结构中的根接口,可以理解成帮派老大


  • 当我们要帮派帮忙时,一般请它下面的小弟来办事,所以用的时候找类来实现


  • 所有类和接口都自身相关的规定,也必须遵守总集合的规定



4. ArrayList第一讲


ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。


ArrayList 继承了 AbstractList ,并实现了 List 接口可以自动扩容



泛型限定是指将类型做限定,可设置成只能存放String类型



如果要进行CRUD,可以创建一个Student



正常来说Student并不是以数组的形式输出的,而是toSring,如果要再添加一个对象扩容的话,又要gettersetter一遍



如果换成集合形式输出, 效果会大不同



这下扩容就方便多了,只需.add()即可,也不用担心数组下标,不用像传统输出写一个for循环了



5. ArrayList第二讲


.add()方法可以添加元素和替换元素



.add(0, 4)表示在第0个下标处插入元素4



.addAll()表示合并元素,讲arrayList_2合并到arrayList_1之后



查看源代码中,集合是先转换为数组,再拷贝到一份新数组返回



.toarray()方法表示返回集合的数组形式



.clear()方法表示清楚数据



.contaions()方法用于判断字符串中是否包含指定的字符或字符串



.get()方法获得集合里的元素,for循环遍历具有操作性,集合的长度要用.size(),数组的长度用.length()



.get()的源代码中,是先检查指是否存在,在返回元素值



如何对集合中每个元素操作呢?增强for循环 for each ,可以实现对每个元素值都加1




目录
相关文章
|
6天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
19 2
|
28天前
|
存储 Java 开发者
Java Map实战:用HashMap和TreeMap轻松解决复杂数据结构问题!
【10月更文挑战第17天】本文深入探讨了Java中HashMap和TreeMap两种Map类型的特性和应用场景。HashMap基于哈希表实现,支持高效的数据操作且允许键值为null;TreeMap基于红黑树实现,支持自然排序或自定义排序,确保元素有序。文章通过具体示例展示了两者的实战应用,帮助开发者根据实际需求选择合适的数据结构,提高开发效率。
60 2
|
12天前
|
JSON BI API
商城上货API接口的实战案例
在商城上货过程中,API接口扮演着至关重要的角色。以下是对商城上货API接口的实战分析,涵盖其主要功能、类型、安全性以及实战案例等方面。
|
9天前
|
XML 数据可视化 API
商品详情数据实战案例,API接口系列
淘宝商品详情数据在电商领域具有广泛的应用价值,而淘宝商品详情API接口则为开发者提供了获取这些数据的重要途径。通过合理利用这些接口和数据,可以提升业务效率、优化用户体验,为电商行业的发展注入新的活力。
|
13天前
|
缓存 监控 Java
如何运用JAVA开发API接口?
本文详细介绍了如何使用Java开发API接口,涵盖创建、实现、测试和部署接口的关键步骤。同时,讨论了接口的安全性设计和设计原则,帮助开发者构建高效、安全、易于维护的API接口。
36 4
|
1月前
|
存储 消息中间件 安全
JUC组件实战:实现RRPC(Java与硬件通过MQTT的同步通信)
【10月更文挑战第9天】本文介绍了如何利用JUC组件实现Java服务与硬件通过MQTT的同步通信(RRPC)。通过模拟MQTT通信流程,使用`LinkedBlockingQueue`作为消息队列,详细讲解了消息发送、接收及响应的同步处理机制,包括任务超时处理和内存泄漏的预防措施。文中还提供了具体的类设计和方法实现,帮助理解同步通信的内部工作原理。
JUC组件实战:实现RRPC(Java与硬件通过MQTT的同步通信)
|
14天前
|
前端开发 API 开发者
Python Web开发者必看!AJAX、Fetch API实战技巧,让前后端交互如丝般顺滑!
在Web开发中,前后端的高效交互是提升用户体验的关键。本文通过一个基于Flask框架的博客系统实战案例,详细介绍了如何使用AJAX和Fetch API实现不刷新页面查看评论的功能。从后端路由设置到前端请求处理,全面展示了这两种技术的应用技巧,帮助Python Web开发者提升项目质量和开发效率。
30 1
|
19天前
|
存储 JSON API
淘宝API接口实战:高效获取商品标题、分类及店铺名称
在淘宝API接口实战中,通过以下步骤高效获取商品标题、分类及店铺名称:1. 准备工作:了解淘宝开放平台文档,注册开发者账号,选择开发语言和工具。2. 获取API访问权限:申请相应权限,提供应用场景说明。3. 调用API接口:构建HTTP请求,提供必要参数。4. 解析响应数据:提取JSON数据中的所需信息。5. 数据处理和存储:进一步处理并存储数据。6. 注意事项:遵守使用规范,注意调用频率和数据安全。示例代码使用Python调用淘宝API。
|
21天前
|
Java API 数据处理
探索Java中的Lambda表达式与Stream API
【10月更文挑战第22天】 在Java编程中,Lambda表达式和Stream API是两个强大的功能,它们极大地简化了代码的编写和提高了开发效率。本文将深入探讨这两个概念的基本用法、优势以及在实际项目中的应用案例,帮助读者更好地理解和运用这些现代Java特性。
|
27天前
|
Java 大数据 API
别死脑筋,赶紧学起来!Java之Steam() API 常用方法使用,让开发简单起来!
分享Java Stream API的常用方法,让开发更简单。涵盖filter、map、sorted等操作,提高代码效率与可读性。关注公众号,了解更多技术内容。