1. Hashmap的底层原理
HashMap底层就是一个数组结构,数组中的每一项又是一个链表。当新建一个HashMap的时候,就会初始化一个数组。
首先HashMap里面实现一个静态内部类Entry,其重要的属性有 key , value, next,从属性key,value我们就能很明显的看出来Entry就是HashMap键值对实现的一个基础bean,我们上面说到HashMap的基础就是一个线性数组,这个数组就是Entry[],Map里面的内容都保存在Entry[]里面。
staticclassEntryimplementsMap.Entry {
finalK key;
V value;
Entry next;
finalinthash;
……
可以看出,Entry就是数组中的元素,每个 Map.Entry 其实就是一个key-value对,它持有一个指向下一个元素的引用,这就构成了链表。
2.Android进程间的通信方式有几种?
3、描述java的反射机制,简单的使用场景
4、listview的优化策略和原理
5、是否可以判断手机上的某个应用是否已经安装了
可以。
6、性能优化
LeakCanary工具Android Lint 工具
7、什么是堆、栈