java
文章平均质量分 61
剑客Chen
致力于但不限于Android开发,涉及kotlin,c\c++、NDK、算法、工具的使用等
展开
-
HashMap、HashSet、TreeMap、TreeSet、LinkedHashMap的数据结构以及适用场景
HashMap: 数组+链表+红黑树实现。通过hashcode映射方式,能更快的查询。一般用于对健值对方式快速查询的使用场景。但是线程不安全,线程的安全的话可以使用tableMap,但tableMap的锁太重,因此可以使用ConcurretHashMap采取分段锁的方式性能更搞。 HashMap无序,如果要有序遍历的情况可以使用treeMap。Concurr...原创 2020-03-27 18:45:37 · 869 阅读 · 0 评论 -
单链表的代码(java)
1、单链表代码实现 /** * 文件描述:手写单链表以及单链表的翻转(不考虑代码优化的情况) * 作者:chenjingkun708 * 创建时间:2020/3/20 * 更改时间:2020/3/20 */public class MyLinkedList<V>{ Node<V> head; int size; public...原创 2020-03-24 16:41:45 · 111 阅读 · 0 评论 -
Java : 数据流 InputStream 和 OutputStream
一、文件 输入输出流 :FileInputStream 与 FileOutputStream 1、FileInputStream、FileOutputStream 顾名思义 属于文件流,用于 文件流操作。继承 InputSream,outputSream,属于InputSream,outputSream 2、用法 //读取一个字符// ...原创 2018-12-18 16:57:28 · 318 阅读 · 0 评论 -
Java: Hook技术
一、什么是Hook Hook翻译成中文就是勾子的意思,在java中它表示在事件到达终点前进行拦截或监控的一种行为。 二、Hook的实现实现hook我们必须要知道java的反射和动态代理。 1、反射 反射是java的查看、检测、修改自身的一种行为。 在编译阶段,编译器将我们编写的java文件编译成.class文件。而在运行期,jvm又将.class文件通过...原创 2018-12-24 10:50:39 · 19532 阅读 · 3 评论 -
java知识:synchronized 、wait、notify、notifyAll
1、synchronized对所在的线程的方法或对象加锁,synchronized 加锁修饰的代码块或对象没有执行完,下个执行此代码块的方法或对象,被加进锁池处于等待状态,直到代码块执行完或者对象不用,下个执行才能正常执行。synchronized 比较重,要排队等待,有些场景比较耗性能,但是加锁提升了线程安全问题。2、wait()wait()方法是超类Object 的方法,f...原创 2018-12-26 13:46:26 · 271 阅读 · 0 评论