HashMap 是一个散列表,它存储的内容是键值对(key-value)映射。 HashMap 实现了 Map 接口,根据键的 HashCode 值存储数据,具有很快的访问速度,最多允许一条记录的键为 null,不支持线程同步。 HashMap 是无序的,即不会记录插入的顺序。 HashMap 继承 ...
分类:
编程语言 时间:
2021-06-02 20:54:38
阅读次数:
0
第三单元博客 (1)设计策略 参照指导书和JML规格进行实现。 (2)结合课程内容,整理基于JML规格来设计测试的方法和策略 Junit单元测试,通过使用Junit达到对每个函数的测试,从而保证每个函数都符合JML规格。 (3)总结分析容器选择和使用的经验 HashMap和HashSet在查找时候能 ...
分类:
其他好文 时间:
2021-06-02 20:19:33
阅读次数:
0
重写hashCode和equals (1)向Map集合中存,以及从Map集合中取,都是先调用key的hashCode方法,然后调用equals方法! equals方法有可能调用,也有可能不调用 往里面存的时候会先调用Hashcode方法,得到Hash值 拿put(k,v)举例,什么时候equals不 ...
分类:
其他好文 时间:
2021-06-02 18:58:20
阅读次数:
0
ArrayList实现 code import java.util.ArrayList; import java.util.Collections; public class PokerDemo { public static void main(String[] args) { // 使用Arra ...
分类:
编程语言 时间:
2021-06-02 16:52:04
阅读次数:
0
本单元是基于JML规格来实现对社交关系的模拟和查询,整体架构与设计都是官方给出。在实现过程中,我深感JML是一个非常适合开发的形式化规格语言。尤其对于团队项目的开发,用JML可以清晰规定每一部分的代码要求,程序员在实现时仅需思考在此基础上如何提升性能,而不用为架构设计发愁,体验极佳。 设计策略 由于 ...
分类:
其他好文 时间:
2021-06-02 15:07:31
阅读次数:
0
1、Set接口:Set不允许包含相同的元素,如果试图把两个相同元素加入同一个集合中,add方法返回false。 Set判断两个对象相同不是使用==运算符,而是根据equals方法。也就是说,只要两个对象用equals方法比较返回true,Set就不 会接受这两个对象。2、HashSet:HashSe ...
分类:
其他好文 时间:
2021-06-02 14:39:54
阅读次数:
0
String为何用final修饰 标签(空格分隔): Java 1. 为了实现运行时常量池实现细粒度颗粒对象的复用. 如题 2. 为了安全 字符串是不可变的, 所以是多线程安全的, 同一个字符串可以被多个线程共享. 这样便不用因为线程安全问题而使用同步(牵扯到Volatile关键字). 字符串自己便 ...
分类:
其他好文 时间:
2021-06-02 13:19:53
阅读次数:
0
概述 本文是基于jdk8_271版本进行分析的。 Hashtable与HashMap一样,是一个存储key-value的双列集合。底层是基于数组+链表实现的,没有红黑树结构。Hashtable默认初始化容量为11,Hashtable也会动态扩容,与HashMap不同的是,每次扩容的容量是原容量2倍+ ...
分类:
编程语言 时间:
2021-06-02 10:43:44
阅读次数:
0
1. HashMap的底层实现原理 HashMap的底层:数组+链表 (jdk7及之前) 数组+链表+红黑树 (jdk 8)HashMap的底层实现原理?以jdk7为例说明: HashMap map = new HashMap(): 在实例化以后,底层创建了长度是16的一维数组Entry[] tab ...
分类:
其他好文 时间:
2021-06-02 10:34:15
阅读次数:
0
效仿原生AapplicationContext 简单的源码分为构造方法和getBean方法所以我们需要冲着些方法考虑 基本完成的代码如下 AapplicationContext 类如下 package cn.jiedada.spring; import java.io.File; import ja ...
分类:
编程语言 时间:
2021-05-25 18:09:55
阅读次数:
0