Android面试
老肖79
这个作者很懒,什么都没留下…
展开
-
干货知识点—多线程同步【3】之Exchanger
继续总结多线程同步常用的方法或者类,之前介绍了CountDownLatch和CyclicBarriar,这次介绍一个保证两个线程同步的类Exchanger。Exchanger–交换机Exchanger的一个特别典型的应用场景是: 一个线程负责一直对某种表或某类数据进行数据库的读取或写入,并不对数据进行处理,也就是说它只和数据的读取和写入打交道,并对缓冲区进行读写操作;而另一个线程,负责从缓冲区中读原创 2018-01-16 10:25:27 · 213 阅读 · 0 评论 -
面试知识点—HashMap和Hashtable的比较
HashMap和Hashtable的比较也是Android面试过程中考察Java基础知识的常见问题,面试者常用它来考验程序员是否能够正确的使用集合类解决问题。所以在参加任何Java相关的面试之前,都应该好好准备一下这一道面试题。我们先来介绍一下两者的相同点,然后再比较一下不同之处。相同点:1、元素种类它们都是键值对容器,容器中的元素对应的键和值都要是对象,而不应该是基本数据类型的数据,比如不应该是i原创 2018-01-06 10:02:43 · 492 阅读 · 0 评论 -
面试知识点--Vector和ArrayList的比较
Vector和ArrayList也是面试过程经常提问到的java基础知识,但是我们很多人容易忽略它们,这里总结一下他们的相同和不同,希望能提高和丰富一下我们的基础知识。Vector和ArrayList都是基于储存元素的Object[] array数组来实现的,是根据索引来访问元素的。 以下从相同点和不同点进行讨论。一、相同点先说一下他们在查询,插入,删除对象的效率问题。ArrayList和Vect原创 2017-12-02 15:16:44 · 288 阅读 · 0 评论 -
面试知识点--常见的8种排序算法
常见的排序算法有如下8种,插入排序,希尔排序,归并排序,冒泡排序,快速排序,选择排序,堆排序,基数排序。我把这8种算法相似的归到了一起,然后分成了五类,如下所示:1、插入排序(稳定的)---〉希尔排序(从插入衍生出来,不稳定的)--〉归并排序(归并内部用到了插入排序的方式,稳定的)2、冒泡排序(稳定的)---〉快速排序(从冒泡而来,递归实现,不稳定的);3、选择排序(不稳定的);原创 2017-11-30 20:19:43 · 409 阅读 · 0 评论 -
面试知识点--链表如何逆转
这个问题应该是面试最常见的题型之一了,很多大公司都会经常提问,如阿里巴巴。它的原理简单,学过数据结构,C语言,熟悉链表的同学应该很容易就掌握。但如果不熟练的话,也容易把代码写复杂了,或者写不出来。 下面我带大家分析一下这个算法。先定义一个链表节点,struct ListNode{ int val; ListNode *next; ListNode(int v) : va原创 2017-12-05 20:43:06 · 292 阅读 · 0 评论 -
知识点干货--内存优化【2】之JVM
“神农尝百草”的故事不知道大家有没有听过,据说有很多个版本,说的挺有意思的,有兴趣的可以查一下。神农氏本是三皇(伏羲,神农,黄帝)之一。在女娲补天之后,不知过了多长时间,在烈山的一个石洞里,出生了一个小孩。说来奇怪,在他刚出世,石洞周围自然涌现了九眼井,这九眼井里的水彼此相连,若取其中一眼之水,其它八眼皆会波动起来。这个孩子天生异相,身体是透明的,五脏六腑清晰可见,头上长有两只角,牛头人身。看到...原创 2019-04-14 17:18:00 · 371 阅读 · 0 评论