20145213《Java程序设计》第五周学习总结补充
20145213《Java程序设计》第五周学习总结补充
教材学习内容总结
欠的账都是要还的!第九章的内容躲过对酒当歌的夜,躲不过四下无人的街。由于第五周贪玩,疏忽冷落了Collection与Map,那么现在我就来温习一下吧!
- 认识Collection架构
- 针对收集对象的需求,Java SE提供了Collection API。
Collection包含了收集对象的共同行为,然而收集对象会有不同的需求。 - 利用
java.util.List接口可以在收集对象时记录每个对象的索引顺序,并可依索引取回对象。 - 利用
java.util.Set接口可以使收集的对象不重复,具有集合行为。 - 利用
java.util.Queue接口可以在收集对象时以队列方式,收集的对象加入至尾端,取得对象时从前端。如果希望对Queue的两端进行加入,移除等操作时,
则可以使用java.util.Deque java.util.List含有两个子类ArrayList与LinkedList。ArrayList使用数组保存收集的对象,数组在内存中会是连续的线性空间,根据索引随机存取时速度快,像是排序,使用ArrayList会有较好的速度表现。LinkedList在操作接口时,采用链接结构,若收集的对象经常有变动索引的情况,采用LinkedList会有较高效率java.util.Set ``````有两个子类,分别是HashSet与TreeSet.java.util.Set接口利用对象的hashCode()与equals() ```判断收集的对象是否不重复Queue继承自Collection,所以也具有add(),remove,element()等方法,然而Queue定义了自己的offer(),poll,peek等方法,最主要差别是add(),remove,element()等方法操作失败时会抛出异常,而offer(),poll,peek等方法操作失败时会返回特定的值。offer()方法用来在队列后端加入对象,成功会返回True,失败会返回falsepoll()方法用来取出队列前端对象,若队列为空,返回nullpeek()用来取得(但不取出)队列前端对象,若队列为空,返回null- 无论
List,Set还是Queue都会有个iterator()方法,iterator()方法会返回java.util.Iterator操作对象,可以让你注意取得收集的对象。 - 接口只有一个方法必须操作时,在JDK8中可以使用
Lambda,细节是如果在Lambda表达式中使用区块是,如果方法必须返回值,在区块中必需使用return,如果没使用区块,return省略 java.util.Collections提供sort方法,由于必须有索引才能进行排序,因此sort方法接受List操作对象。java.util.Collections的sort方法要求被排序的对象必须操作java.lang.Comparable接口。但你的对象无法操作java.lang.Comparable时,java.util.Collections的sort方法有另一个重载版本,可接受java.util.Comparator接口操作的对象,如果使用这个版本,排序方式将根据Comparator的compare定义决定。
- 常用Map操作类
- 常用的
Map操作类为java.util.HashMap与java.util.TreeMap ````.在HashMap中建立键值对应之后,键是无序的。在TreeMap中建立键值,键是有序的。值得注意的是作为键的对象,必须操作Comparable,或者在创建时指定操作Comparator ```接口的对象 - 如果想取得
Map中所有的键,可以调用Map的keyset()返回Set对象。 - 如果想取得
Map中所有的值,可以使用Value返回Collection对象。 - 如果想同时取得
Map中所有的键与值,可以使用entrySet()方法,这会返回一个Set对象,每个元素都是Map.Entry的实例,可以调用getKey()取得键,调用getValue ```取得值。
20145213《Java程序设计》第五周学习总结补充的更多相关文章
- 201521123025<java程序设计>第五周学习总结
1. 本周学习总结 2. 书面作业 1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 1.2 ...
- Java程序设计第五周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 2. 书面作业 **代码阅读:Child压缩包内源代码 Child.java源代 ...
- 20145213《Java程序设计》第九周学习总结
20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...
- 20145213《Java程序设计》第二周学习总结
20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...
- 20145213《Java程序设计》第一周学习总结
20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...
- 21045308刘昊阳 《Java程序设计》第九周学习总结
21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...
- 20145236 《Java程序设计》第九周学习总结
20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...
- 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结
20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...
- 20155303 2016-2017-2 《Java程序设计》第二周学习总结
20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...
随机推荐
- KVM虚拟机内存不足,调整参数
Dec :: vgfs001 kernel: tiotest_AMD_x86 invoked oom-killer: gfp_mask=, oom_adj=, oom_score_adj= Dec : ...
- Sublim text2 的注册码
1. Andrew Weber Single User License EA7E-855605 813A03DD 5E4AD9E6 6C0EEB94 BC99798F 942194A6 02396E9 ...
- iOS开发——UI进阶篇(五)通知、代理、kvo的应用和对比,购物车
一.通知 1.通知中心(NSNotificationCenter)每一个应用程序都有一个通知中心(NSNotificationCenter)实例,专门负责协助不同对象之间的消息通信任何一个对象都可以向 ...
- BZOJ1012——[JSOI2008]最大数maxnumber
1.题目大意:求末尾L个数的最大值,强制在线 2.分析:这个拿线段树可以直接水过,然后我写了一个 维护单调栈, 二分求最大值的短代码,手懒.... #include <cstdio> #i ...
- Oracle Database 11g Express Edition学习笔记
修改字符集 使用用户system,通过sqlplus程序连接到Oracle数据库,输入以下命令,查看字符集: SQL> select userenv('language') from dual; ...
- Java验证码识别解决方案
建库,去重,切割,识别. package edu.fzu.ir.test; import java.awt.Color; import java.awt.image.BufferedImage; im ...
- 9.4---集合子集(CC150)
这题非常复杂.牛客网上对应的题目对结果要求比较苛刻,所以要调整. 整体思路是:先放进去一个,然后第二个来的时候插入到已有的,并且把自己也放进去. public static ArrayList< ...
- 【转】Oracle当中扫描数据的方法
本文将对oracle当中扫描数据的存取方法进行介绍. 1) 全表扫描(Full Table Scans, FTS) 为实现全表扫描,Oracle读取表中所有的行,并检查每一行是否满足语句的WHERE限 ...
- non
I p(I q){r p(c((q>9?q-p(q/10):q)+'0')),q*10; }
- 【Network】高性能 UDP 服务应该怎么搞?
参考资料: Netty系列之Netty高性能之道 C++高性能服务框架revover:rudp总体介绍(可靠UDP传输) - zerok的专栏 - 博客频道 - CSDN.NET 高性能异步Socke ...