20145213《Java程序设计》第五周学习总结补充


教材学习内容总结

欠的账都是要还的!第九章的内容躲过对酒当歌的夜,躲不过四下无人的街。由于第五周贪玩,疏忽冷落了Collection与Map,那么现在我就来温习一下吧!

  1. 认识Collection架构
  • 针对收集对象的需求,Java SE提供了Collection API。Collection 包含了收集对象的共同行为,然而收集对象会有不同的需求。
  • 利用java.util.List接口可以在收集对象时记录每个对象的索引顺序,并可依索引取回对象。
  • 利用java.util.Set接口可以使收集的对象不重复,具有集合行为。
  • 利用java.util.Queue接口可以在收集对象时以队列方式,收集的对象加入至尾端,取得对象时从前端。如果希望对Queue的两端进行加入,移除等操作时,
    则可以使用java.util.Deque
  • java.util.List含有两个子类ArrayListLinkedListArrayList使用数组保存收集的对象,数组在内存中会是连续的线性空间,根据索引随机存取时速度快,像是排序,使用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,失败会返回false
  • poll()方法用来取出队列前端对象,若队列为空,返回null
  • peek()用来取得(但不取出)队列前端对象,若队列为空,返回null
  • 无论List,Set还是Queue都会有个iterator()方法,iterator()方法会返回java.util.Iterator操作对象,可以让你注意取得收集的对象。
  • 接口只有一个方法必须操作时,在JDK8中可以使用Lambda,细节是如果在Lambda表达式中使用区块是,如果方法必须返回值,在区块中必需使用return,如果没使用区块,return省略
  • java.util.Collections提供sort方法,由于必须有索引才能进行排序,因此sort方法接受List操作对象。
  • java.util.Collectionssort方法要求被排序的对象必须操作java.lang.Comparable接口。但你的对象无法操作java.lang.Comparable时,java.util.Collectionssort方法有另一个重载版本,可接受java.util.Comparator接口操作的对象,如果使用这个版本,排序方式将根据Comparatorcompare定义决定。
  1. 常用Map操作类
  • 常用的Map操作类为java.util.HashMapjava.util.TreeMap ````.在 HashMap 中建立键值对应之后,键是无序的。在 TreeMap 中建立键值,键是有序的。值得注意的是作为键的对象,必须操作 Comparable ,或者在创建时指定操作 Comparator ```接口的对象
  • 如果想取得Map中所有的键,可以调用Mapkeyset()返回Set对象。
  • 如果想取得Map中所有的值,可以使用Value返回Collection对象。
  • 如果想同时取得Map中所有的键与值,可以使用entrySet()方法,这会返回一个Set对象,每个元素都是Map.Entry的实例,可以调用getKey()取得键,调用 getValue ```取得值。

20145213《Java程序设计》第五周学习总结补充的更多相关文章

  1. 201521123025<java程序设计>第五周学习总结

    1. 本周学习总结 2. 书面作业 1.代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 1.2 ...

  2. Java程序设计第五周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. 2. 书面作业 **代码阅读:Child压缩包内源代码 Child.java源代 ...

  3. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  4. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  5. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  6. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  7. 20145236 《Java程序设计》第九周学习总结

    20145236 <Java程序设计>第九周学习总结 教材学习内容总结 第十六章 整合数据库 JDBC简介 1.JDBC是java联机数据库的标准规范.它定义了一组标准类与接口,标准API ...

  8. 20155304田宜楠2006-2007-2 《Java程序设计》第一周学习总结

    20155304田宜楠2006-2007-2 <Java程序设计>第一周学习总结 教材学习内容总结 - 浏览教材,根据自己的理解每章提出一个问题 第一章 除了书上提到的开发工具还有什么适合 ...

  9. 20155303 2016-2017-2 《Java程序设计》第二周学习总结

    20155303 2016-2017-2 <Java程序设计>第二周学习总结 教材学习内容总结 『注意』 "//"为单行批注符: "/*"与&quo ...

随机推荐

  1. iOS:项目中疑难Crash问题集锦

    项目中疑难Crash问题集锦 iOS App运行中遇到Crash的情况相信大家都遇到过,开发和者测试中遇到了可能很方便的办法就是直接拿着设备连接一下,然后使用Xcode自带的工具就可以解析出Crash ...

  2. 扁平化设计五大原则(转自CSDN翻译)

    Cousins表示他虽然对扁平化设计的感觉非常强烈,但并没有特别热爱或者特别讨厌扁平化设计.他认为好的设计不应当局限于某种设计风格,而需要更注重可用性.有用性.如果因为时尚的缘故,那就顺其自然吧.但该 ...

  3. 外网主机访问虚拟机下的web服务器(NAT端口转发)

    主机:系统win7,ip地址172.18.186.210 虚拟机:VMware Workstation 7,虚拟机下安装了Centos操作系统,ip地址是192.168.202.128,部署了LAMP ...

  4. Swift2.1 语法指南——协议

    原档: https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programm ...

  5. 在使用开源library的PullToRefreshView中

    下拉刷新几乎是每个应用都会有的功能,且大部分用的都是开源项目,下载地址:下拉刷新.如何在页面刚打开的时候自动触发下拉刷新的呢? 只需要一句代码,在PullToRefreshAdapterView Ba ...

  6. iOS 图片 的 聊天气泡显示 Objective-C

    - (void)viewDidLoad { [super viewDidLoad]; UIImageView *ImageView01 = [[UIImageView alloc] init]; [I ...

  7. UITabBarController的使用和坑

    本人apem 说到UITabBarController, 最首要的坑就是tabbar的图片不显示的问题 1. tabbar上的图片一定要2套以上, 例如一个uitabbaritem的image是 se ...

  8. BZOJ 4665: 小w的喜糖

    Sol DP+容斥. 这就是一个错排的扩展...可是想到容斥却仅限于种数的容斥,如果种数在一定范围内我就会做了QAQ. 但是容斥的是一定在原来位置的个数. 发现他与原来的位置无关,可以先把每个同种的糖 ...

  9. peewee 字段属性help_text的支持问题

    至少在__version__ = '2.6.0'的时候,给字段添加help_text的时候,在数据库的ddl语句里面是没有comment的. 看了下源码,顺藤摸瓜,最终定位到了字段(Field类)的_ ...

  10. Objective C 快速入门学习四

    类 1.合成存取器方法 @property   成员变量 @synthesize 成员变量 可以让编译器自动合成 设置和获取函数的方法,不用手动生成set成员变量,Get成员变量 @interface ...