摘要: TreeSet 基于 的`NavigableSet TreeMap Object`. 参见: [JDK In Action TreeMap] 这个实现提供的基本操作( )保证log(n)时间开销. 和 一样,该集合也是非线程安全的,快速失败的.提供的Key需要是可比较的. API Example 构 阅读全文
posted @ 2020-05-07 16:25 onion94 阅读(151) 评论(0) 推荐(0) 编辑
摘要: JShell JDK 新增的命令行工具,用于运行java片段代码,类似于Python的交互式运行环境 基本用法 运行单个脚本文件 + hello.java 运行输出 启动交互式环境 交互环境加载脚本执行 Windows Notepad++编辑器配置快捷运行 + 菜单 运行,保存为 JShell , 阅读全文
posted @ 2020-05-07 10:52 onion94 阅读(130) 评论(0) 推荐(0) 编辑
摘要: TreeMap 基于红黑树的 实现.元素根据Key的自然顺序排序,或者是根据构造函数传入的 排序. 该集合对 的操作保证log(n)的时间复杂度.算法实现改编自Cormen, Leiserson, and Rivest的 (Introduction to Algorithms). 注意为了保证正确实 阅读全文
posted @ 2020-05-07 10:49 onion94 阅读(128) 评论(0) 推荐(0) 编辑
摘要: BIO 一个模拟TCP交互协议的阻塞套接字编程示例 TcpSample 模拟TCP连接状态机 TcpSampleSocket 套接字客户端 TcpSampleMultiThreadServerSocket 套接字服务端 + client 改进使用NIO Client 的示例 + TcpSampleS 阅读全文
posted @ 2020-05-06 18:06 onion94 阅读(250) 评论(0) 推荐(0) 编辑
摘要: HashMap 非线程安全的散列表实现,采用链表法解决Hash冲突. 优化点: + hash函数,避免key的hashcode()设计糟糕导致hash冲突严重 + 冲突链表转红黑树,线性查找改进为对数查找 + 2倍扩容, 简单.(相对于素数桶大小而言) 源码导读 初始构造容量大小 返回最接近cap的 阅读全文
posted @ 2020-05-06 16:17 onion94 阅读(211) 评论(0) 推荐(0) 编辑
摘要: Transfer API 在 NIO 中,如果其中一个Channel是 ,则可以利用 和`transferFrom()`两个API进行高效的数据传输. 其底层原理是利用DMA技术减少内核缓冲区和应用程序缓冲区的数据拷贝来提高效率. 注意这两个API的具体实现是不做完全保证的,也就是说没有规定是否用D 阅读全文
posted @ 2020-05-05 22:20 onion94 阅读(619) 评论(0) 推荐(0) 编辑
摘要: ByteBuffer 用于NIO的可以在堆内存中分配或者直接内存中分配的缓冲区实现,有8中具体的类型. 具有三个核心属性: + capacity : 缓冲区容量 + limit : 读写限制索引 + position : 读写开始索引 通过操纵 limit 和 position 两个索引,来对缓冲区 阅读全文
posted @ 2020-05-05 22:19 onion94 阅读(193) 评论(0) 推荐(0) 编辑
摘要: FileChannel 文件管道 + 支持随机读写 + 支持文件截断 + 支持文件写强制刷新到磁盘 + 支持独占或共享的文件锁 + 支持直接内存访问(DMA)的大文件传输 + 支持文件到其他channel的缓冲区传输优化 和`transferTo` API Example File Channel截 阅读全文
posted @ 2020-05-05 22:16 onion94 阅读(164) 评论(0) 推荐(0) 编辑
摘要: ArrayList 接口的具体实现,底层基于 存储元素,可自动扩容,元素可为 ,非线程安全. 优势:随机访问操作只需常量时间; 劣势:随机插入,随机删除,新增大量元素的操作需要线性时间; API Example 元素替换和查找 指定容量的构造函数 静态构造不可变的 List 新增和插入元素 删除和清 阅读全文
posted @ 2020-05-03 22:11 onion94 阅读(202) 评论(0) 推荐(0) 编辑
摘要: Java平台 + https://www.baeldung.com/ + https://mkyong.com/ + https://www.javacodegeeks.com/ + https://www.java examples.com/ + https://java2blog.com/ + 阅读全文
posted @ 2020-04-30 16:28 onion94 阅读(105) 评论(0) 推荐(0) 编辑