`
IO_oI
  • 浏览: 23069 次
社区版块
存档分类
最新评论

“持有对象”小结

    博客分类:
  • Java
阅读更多


Iterator:用于对任何容器从始至终遍历,且仅能遍历一次
ListIterator:只能用于List类,可一开始就指向任意索引位置,可双向移动,可产生当前位置的前一个与后一个元素的索引,可替换访问过的最后一个元素

List:行为根据equals()的行为而有所变化
ArrayList:一种可修改的序列,允许创建之后添加、移除元素,可自我调整尺寸
长于随机访问元素,但是插入、移除操作较慢

LinkedList:插入、移除操作代价较低,提供了优化的顺序访问,随机访问较慢,特性集较ArrayList更大。可直接作为栈、队列、双向链表使用


Stack:后进先出。多用于对表达式求值
LinkedList

Set:无重复元素
HashSet:提供最快的查询速度
TreeSet:保持元素处于排序状态
LinkedHashSet:保持元素插入的顺序,但也通过散列提供了快速访问能力


Map:存储对象与对象间的映射关系
HashMap:快速访问
TreeMap:保持“键”始终处于排序状态,所以没HashMap快
LinkedHashMap:保持元素插入的顺序,但也通过散列提供了快速访问能力


Queue:先进先出,并发编程中可以安全的将对象从一个任务传输到另一个任务
PriorityQueue:将添加进的元素按优先级规则(先进先出规则失效)控制行为
LinkedList


新程序中不应该使用过时的Vector、Hashtable、Stack。
But,why?
  • 大小: 270.1 KB
分享到:
评论

相关推荐

    小结NT_Q&A.docx

    【小结NT_Q&A.docx】中的知识点梳理: 1. Activity的启动流程: - `startActivity`方式:从抽象类`Context`的`startActivity`出发,实际由`ContextImpl`实现,再通过`Instrumentation`启动Activity。在跨进程调用...

    面向对象的依赖、关联、聚合、组合关系

    ### 小结 在面向对象设计中,正确区分并应用这四种关系至关重要。依赖关系用于表示临时的交互需求,关联关系用于表示长期的联系,而聚合和组合则分别描述了不同强度的整体与部分之间的关系。了解并掌握这些关系,...

    Java多线程小结

    ### Java多线程小结 #### 一、多线程的概念与意义 多线程是Java编程中的一个重要概念,指的是程序在运行时可以同时执行多个线程的能力。它能够提高程序的性能,尤其是在多核处理器的环境下。多线程使得程序能够更...

    设计模式小结

    本文旨在总结几种核心的设计模式,包括依赖、关联、聚合、组合、继承、实现等基本对象间关系,以及创建型模式中的简单工厂模式和工厂方法模式。 #### 对象间关系 1. **依赖(Dependence)** 当一个类A依赖于另一...

    多任务编程---1 windows内核对象

    #### 小结 通过对Windows内核对象的学习,我们不仅能够更加深入地理解操作系统如何管理和同步进程间的资源,还能够在实际开发中更高效地利用这些对象来构建复杂的应用程序。无论是对于初学者还是资深开发者而言,...

    Android内存管理小结

    - 较小的体积和更低的资源消耗使得它非常适合移动设备。 - 支持同时运行多个虚拟机实例,这使得每个Android应用都能拥有独立的虚拟机环境。 #### 二、Dalvik虚拟机架构特点 - **基于寄存器架构**:与传统的JVM...

    Spring笔记和小结

    而`RentABike`类则是一个商店,它持有一个`Bike`对象的列表,用于管理商店中的过山车。 在传统的Java应用中,`RentABike`类可能会直接依赖于`Bike`类,例如通过构造函数传入一个`Bike`实例,这会导致代码紧密耦合,...

    大学生社会实践小结.doc

    ### 大学生社会实践小结——探索就业之路 #### 背景与意义 在当前社会背景下,大学生社会实践已经成为高等教育中的一个重要组成部分。它不仅能够帮助学生更好地理解理论知识,还能让学生提前接触社会,增强自身的...

    多个Activity跳转的小结

    长时间持有Activity引用可能导致内存泄漏,影响应用性能。而无限制地创建Activity实例则可能耗尽系统资源,引发栈溢出异常。因此,合理设计Activity间的跳转逻辑和适当地使用finish()方法关闭不再需要的Activity是...

    Android异步加载图像小结 (含线程池,缓存方法).rar

    在Android应用开发中,图像加载是一个常见的...以上就是关于“Android异步加载图像小结(含线程池,缓存方法)”的主要知识点。在实际应用中,开发者应结合项目需求,合理选择和优化这些技术,以提供流畅的用户体验。

    Android常见的几种内存泄漏小结

    Android常见的几种内存泄漏小结 Android应用程序中内存泄漏是非常常见的问题,它可能会导致应用程序OOM(Out of Memory)错误,从而引发应用程序崩溃。因此,掌握常见的内存泄漏原因和解决方法是非常重要的。 一...

    C#2.0 :windows form (窗体) 之间传值小结

    这意味着对实例的任何修改都会在所有持有该实例引用的地方生效。例如,在上述例子中,Form1和Form2都可以修改`Class1`的`i`值,因为他们共享同一个对象实例。 此外,还有事件(Event)可以用来传递数据,其工作原理...

    json的使用小结

    JSON的用途 使用基于JavaScript的应用程序...•大括号持有的对象和每个名称后跟”:”(冒号),名称/值对的分离,(逗号) •方括号持有数组和值,(逗号)分隔。 { "book": [ { "id":"01", "language": "Java",

    突破程序员基本功的16课.part2

    1.3 小结 第2课 对象与内存控制 2.1 实例变量和类变量 2.1.1 实例变量和类变量的属性 2.1.2 实例变量的初始化时机 2.1.3 类变量的初始化时机 2.2 父类构造器 2.2.1 隐式调用和显式调用 2.2.2 访问子类对象...

    C#设计模式结构型

    合成模式的小结强调了其核心思想是使用树形结构来实现对象容器,将“一对多”的关系转化为“一对一”的关系。客户代码与对象容器的解耦是合成模式的关键,这样客户代码就可以依赖于纯粹的抽象接口而不是对象容器的...

    智能手机操作系统编程Symbian及60系列

    本书旨在把目前市场上最流行的也是持有最大市场分额的智能手机操作系统Symbian介绍给更广泛的人群。本忆较全面地覆盖了Symbian操作系统及编程等内容,主要包括开发环境、内存与资源管理、应用程序设计、... 8.5 小结

    美河提供.智能手机操作系统编程Symbian及60系列1

    本书旨在把目前市场上最流行的也是持有最大市场分额的智能手机操作系统Symbian介绍给更广泛的人群。本忆较全面地覆盖了Symbian操作系统及编程等内容,主要包括开发环境、内存与资源管理、应用程序设计、... 8.5 小结

Global site tag (gtag.js) - Google Analytics