HashSet.java 类的 private transient SortedMap<E,Object> m;
public boolean add(E o) { return m.put(o, PRESENT)==null; }
其实调用的是HashMap的put 方法,把对象放在Key上,在这个方法中首先获得了对象o的hashcode,然后比较map中
是否有对象的hashcode与o对象的hashcode相等,同时比较对象的equals方法(只是对地址进行比较);
我们在开发中如果需要精确比较对象是否相等,可以重写对象的这两个方法,默认调用Object的。
TreeSet.java : public boolean add(E o) 其实调用的是TreeMap.java 的put方法;
public class TreeSet<E> extends AbstractSet<E> implements SortedSet ;
public class TreeMap<K,V> extends AbstractMap<K,V> implements SortedMap<K,V>
在put方法中调用接口Comparable的compareTo方法进行了比较;如果要插入对象,对象必须实现接口Comparable的compareTo方法,来自定义一个排序的方法。
分享到:
相关推荐
本文档主要介绍 Java 类库的结构和使用方法,涵盖了 Java 中一些常用的包和类,例如 java.lang、java.awt、java.io 等。同时,也介绍了 String 类和 StringBuffer 类的使用方法。 Java 类库是 Java API 的一部分,...
ArrayList、LinkedList、HashSet、TreeSet、HashMap、LinkedHashMap等是常用的数据结构实现,它们各自具有不同的特性和性能表现,适用于不同的场景。 2. 输入/输出流:Java的I/O流系统支持处理数据的读写,包括文件...
这个压缩包“java基本类库结构图.zip”显然是一个可视化工具,用于展示Java类库的层级结构。Echarts是一个流行的JavaScript数据可视化库,它被用来创建这个交互式的HTML页面,用户可以通过点击节点来探索类库的深层...
JavaUtil包是Java类库中的一个非常重要的组成部分,它提供了许多实用的方法和数据结构。 ##### java.util包基本层次结构 java.util包包含了许多重要的类和接口,如BitSet、Calendar、Date、Dictionary、...
- **Java SE 体系结构**:Java SE 平台包括了Java类库、Java虚拟机(JVM)以及一系列标准APIs等关键组成部分,构成了Java程序运行的基础环境。 ### 2. Java 类库组织结构 - **JDK提供的预定义类**:JDK中包含了丰富...
字符串是字符的序列,它是组织字符的基本数据结构,从某种程度上来说有些类似于字符的数组。在Java中,字符串被当作对象来处理。程序中需要用到的字符串可以分为两大类,一类是创建之后不会再做修改和变动的字符串...
2. **集合框架**:`java.util`包下的集合框架是Java编程中非常重要的部分,包括`ArrayList`、`LinkedList`、`HashMap`等数据结构。它们提供了存储和操作对象的方式,可以实现动态数组、链表、队列、栈、映射等功能。...
- 性能优化:通过合理设计数据结构和优化算法,减少服务器端的计算负载。 综上所述,"ECharts - Java 类库.zip" 提供的可能是一个用于在 Java 后端生成和管理 ECharts 图表的工具,帮助开发者更便捷地将数据可视化...
2. **集合框架**:在`java.util`包下,集合框架是Java类库中的一个重要组成部分,它提供了多种数据结构(如ArrayList、LinkedList、HashSet、HashMap等)和算法,便于高效地存储和操作数据。 3. **多线程**:`java....
书中附带的jdsl(Java数据结构类库)是一个实用的工具,提供了丰富的数据结构和算法实现,如优先队列、集合、映射、散列、图等。这个类库不仅可以帮助学习者快速理解和使用数据结构,也可以方便地在实际项目中进行...
**简介**:StringBuffer是Java语言中用于处理可变字符串的一种数据结构。与String不同的是,StringBuffer的内容可以在创建后被修改。这对于需要频繁修改字符串内容的场景非常有用。 **StringBuffer的特性**: - ...
在Java的`java.util`包中,类库主要关注数据结构和集合框架。其中,集合框架是Java类库中最重要的一部分,它提供了一种高效管理对象的方式。集合框架的核心接口包括`Collection`、`Map`和`Iterator`。 1. `...
1. **集合框架**:Java的集合框架包括ArrayList、LinkedList、HashMap等数据结构。源码分析可以揭示它们如何存储和操作元素,以及在不同场景下哪种数据结构更优。例如,ArrayList基于数组实现,适合随机访问;而...
综上所述,这个"JAVA类库.rar"压缩包内容涵盖了Java开发的多个关键方面:项目配置、类路径设置、元数据信息、源代码组织以及资源管理。这些元素共同构成了一个完整的Java开发环境,有助于开发者更有效地构建和维护...
Java类库是Java编程语言的核心组成部分,它包含了丰富的API(应用程序接口)供开发者使用,以实现各种功能。本手册——“Java2类库参考手册”是针对Java2平台的类库进行详细介绍的重要参考资料,旨在帮助开发者更好...
2. **集合框架**:`java.util`包下的集合框架是Java类库的重要部分,提供了ArrayList、LinkedList、HashMap、HashSet等数据结构,方便存储和操作对象。例如,ArrayList提供了动态数组的功能,HashMap则提供了键值对...
7. Java类库学习资源:该手册的出现为Java初学者和进阶用户提供了一个权威且实用的学习资源,有助于他们更好地理解JavaSE6标准类库的结构和用法,从而提升编程效率和质量。 8. OCR扫描识别问题:由于文档内容是通过...
通过研究这些例子,开发者不仅可以巩固Java基础知识,还能学习到如何在实际项目中灵活运用Java类库,提升编程能力。对于初学者而言,这是一个宝贵的资源库,对于经验丰富的开发者来说,也是一个复习和查找特定功能...
1. **基础类库**:如`java.lang`包,提供了基本数据类型、字符串、异常处理和运行时环境等核心功能。 2. **集合框架**:`java.util`包中的ArrayList、LinkedList、HashMap等,为数据存储和操作提供了灵活的方式。 3....
- **Map**: 存储键值对映射关系的数据结构,主要实现类有`HashMap`和`TreeMap`。 - **Iterator**: 用于遍历集合中的元素。 - **ListIterator**: `Iterator`的扩展,除了提供迭代功能还提供了对列表的修改操作。 ###...