java
文章平均质量分 81
再看就点爆
这个作者很懒,什么都没留下…
展开
-
ThreadLocal原理解析
ThreadLocal这篇文章其实是接着上一篇文章来的,因为在安卓消息机制中是用ThreadLocal来保存各个线程的Looper对象,所以这篇文章专门来讲一下这个特殊的类。ThreadLoacal的作用其实很简单:可以保存不同线程中的数据。用代码给你解释一下:public class MainActivity extends AppCompatActivity { private stat原创 2017-03-31 17:53:18 · 412 阅读 · 0 评论 -
(四)Android数据结构学习之栈
需要看本系列其他文章的请转到: (一)Android数据结构学习之链表 (二)Android数据结构学习之数组(三)Android数据结构学习之队列正文对数据结构稍微有些了解的,肯定知道栈的特性是:先进后出。它的性质和队列有些相似,都可以通过他们的特性在某些场景发挥很好的作用。下图描述了栈的特性:在java中使用Stack这个类来描述栈,我们一起来看一下。public class Stack原创 2017-08-09 11:02:12 · 1328 阅读 · 0 评论 -
(三)Android数据结构学习之队列
前文本系列文章的前两篇主要讲了链表和数组,没看过的朋友可以转到:(一)Android数据结构学习与算法之链表(二)Android数据结构学习与算法之数组今天的文章我们来一起学习一下数据结构之队列。正文对于队列稍有耳闻的同学肯定会知道它有一个特点:先进先出。正是这个特点使得队列在处理一些对于顺序要求很高的需求时有很好的效果,就像网络请求的排序,队列大概是这样的:上图可以队列是一个很明显的先进先出原创 2017-08-07 15:30:46 · 7440 阅读 · 0 评论 -
(二)Android数据结构学习之数组
前言上一篇文章讲述了数据结构的基本知识以及链表的相关知识,地址:(一)Android数据结构学习与算法之链表,本文是系列文章的第二篇,讲的是数组概述数组的使用数组在java中的实现为下:String[] arr1 = new String[3];// 创建一个大小为3的数组arr1[0] = "0";arr1[1] = "1";arr1[2] = "2";String[] arr2 = ne原创 2017-08-04 17:11:54 · 6813 阅读 · 0 评论 -
(一)Android数据结构学习之链表
需要看本系列其他文章的请转到: - (一)Android数据结构学习与算法之链表 - (二)Android数据结构学习与算法之数组 - (三)Android数据结构学习与算法之队列前言我们都知道Android是基于java的,Java中实现了很多数据结构,像我们最常使用的数组、List都是数据结构,当我们使用的时候可能会觉得这些东西真是方便,但是并不知道其中原理,很多好的公司招人会原创 2017-08-02 16:24:42 · 6176 阅读 · 0 评论 -
从观察者模式的角度看RxJava
概述用过Rxjava的朋友都知道它是用观察者模式写的,且用起来的时候一定会有一个Observable(被观察对象)和一个Observer(观察者对象),作者刚接触Rxjava的时候被它的迷の编码方式和各种操作符整的头晕,也不太理解它所使用的观察者模式。今天就让我们从观察者模式的角度去理解一下Rxjava观察者模式观察者模式,顾名思义会有一个被观察的对象和一个观察者对象,关系简单来说就是:被观察者做了原创 2017-04-17 19:40:39 · 778 阅读 · 2 评论 -
深入浅出RxJava演变原理
概述Rxjava和RxAndroid在安卓开发中越来越常见了,函数式编程的思想和编码方式写起代码来还是非常爽的,今天这篇文章,不会去介绍RxJava的使用,而是去介绍RxJava的思想是怎么从我们原始的编码思想中演变出来的。引文首先引入一篇很优秀的帖子http://www.devtf.cn/?p=323,楼主的这篇帖子算是用自己的思维把原文给翻译了一遍。正文上代码:/** * 学生 */pub原创 2017-04-11 00:37:41 · 708 阅读 · 1 评论 -
适配器模式在Android开发中的应用
一、前言适配器:Adapter,大家看到这个单词是不是非常眼熟了?没错,这就是我们平时用到ListView和RecyclerView时必定会配合使用的Adapter。列表显示数据几乎是任何一个安卓项目都会用到的一个功能,谷歌使用适配器模式来封装等使之异常灵活且非常实用,我们想要了解谷歌为什么这样做,就要先理解java适配器模式是怎样运作的,这篇文章我们就学习一下java设计模式之一的适配器模式以及它原创 2017-03-25 21:14:13 · 1182 阅读 · 3 评论 -
Android 非静态内部类/匿名类引起的内存泄漏
一、概述让我们先来回顾一下android内存泄漏的相关概念: - 内存溢出:android系统会给每个安卓程序分配一定的内存,当程序所使用的内存超过最大值就会造成内存溢出,就是常说的OOM - 内存泄漏:简单来说就是你new了一个对象,这个对象是要消耗内存的,然后jvm会对没有引用的对象进行回收释放内存,如果一个对象已经没有引用了,但是jvm没有回收这个对象,就会造成内存泄漏,多次内存泄漏到最后原创 2017-03-20 21:10:20 · 9228 阅读 · 2 评论 -
java Map使用遇到的问题
Map map = new HashMap();map.put("aaa", "1");map.put("bbb", "1,2");map.put("ccc", 1);map.put("ddd", 2);map.put("ddd", 2D);Map, Integer> params = map;// (1)此处不会报错,换成Float或者Double等都不会报错,但是只要一换成Stri原创 2016-11-29 16:39:53 · 474 阅读 · 0 评论 -
java算法之冒泡排序、选择排序、插入排序
冒泡排序 重复访问数列 ,一次比较相邻两个元素,如果前一个元素比后一个元素大,那么交换他们的顺序,多次交换之后得出正确排序。假设有这样一个数组{7, 3, 6, 1, 9, 2, 5, 4, 0, 8},使用冒泡排序进行排序,每次循环从最后一个元素开始,相邻的两个元素进行比较,如果前一个元素大于后一个元素,则两者互换第一次排序的结果为{7, 3, 6, 1, 9, 2, ...原创 2017-11-02 18:27:05 · 1075 阅读 · 0 评论