ConcurrentHashMap HashMap不支持并发, 在多线程的情况下, 推荐使用ConcurrentHashMap. ConcurrentHashMap在JDK8之 2019-04-16 Android ConcurrentHashMap LruCache 使用缓存有助于提高应用的体验, 但是内存的大小是有限的, 所以有必要考虑如何更好更合理的对缓存进行管理. LruCache是一种常用的缓存 2019-04-11 Android LruCache LinkedHashMap LinkedHashMap继承自HashMap, 它的大部分功能都维持了HashMap的原样, 同时在此基础上又维护了一个双向链表结构. 通 2019-04-04 Android LinkedHashMap HashMap HashMap作为日常开发中用的最多的集合之一, 非常有必要对它的内部原理进行一下了解, 同时源码里的一些写法也是非常值得学习的. 2019-04-04 Android HashMap AsyncTask AsyncTask 是一个轻量级的异步任务类. AsyncTask内部封装了线程池和Handler, 让我们在执行异步任务时, 可以比较容易 2019-03-27 Android AsyncTask Toast源码分析 Toast作为向用户展示提示信息的一种方式, 既不会像Dialog一样打断用户的操作体验, 也不会响应任何点击事件, 并且会在短暂的显示之后 2019-03-26 Android Toast BadTokenException HandlerThread&IntentService 在处理多个异步任务时, 有两种选择. 一种是并行, 这种情况可以使用线程池; 另一种是串行, 可以使用 HandlerThread来实现. 2019-03-24 Android IntentService HandlerThread TheadLocal源码分析 默认情况下, 多线程间数据是共享的, Java中也提供了相关的同步机制用于多线程数据共享造成的数据安全性问题. 同时考虑到某些需要线程间数据 2019-03-24 Android ThreadLocal Handler消息机制 说起Android的消息处理机制, Handler肯定是无法被忽略的一个点. 通过Handler收发消息可以非常方便的实现线程间通信功能. 2019-03-23 Android Handler 自定义View(六)--Paint 构造方法 直接构造方法// Create a new paint with default settings public Paint() 2019-03-21 Android View Canvas Paint 自定义View(五)--drawText Canvas除了能绘制基础集合图形, 绘制图片以外, 还有一个非常重要, 同时也相对复杂一点的功能 -- 绘制文字. 2019-03-18 Android View Canvas drawText 自定义View(四)--Path Canvas 中除了一系列绘制点、线、基础集合图形、图片、文字的方法, 还有一个非常有用的方法 drawPath. 利用 Path, 除了能 2019-03-17 Android View Canvas Path