自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

王瑞刚的专栏

the truth is what it is,not what you see.

  • 博客(22)
  • 资源 (2)
  • 收藏
  • 关注

原创 Android神奇“控件”-----RemoteViews

好久没有写博客了,主要是忙着找工作和做毕业设计,没有时间来看一些值得分享的东西。今天写这篇博客是因为我被安排了解下RemoteViews。说实话,这个东西真心没有看过,仅仅看《Android艺术开发探索》的时候知道有这么个“控件”,还记得任主席在群里说过这是他这本书

2016-12-30 19:31:30 6622 9

原创 剑指offer面试题22(java实现)

题目栈的压入、弹出序列 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1、2、3、4、5是某栈的压栈序列,判断序列4、5、3、2、1是否是该压栈序列对应的一个弹出序列?

2016-05-29 16:20:53 689

原创 剑指offer面试题21(java实现)

题目定义栈的数据结构,请在该类型中实现一个能够得到栈的最小元素的min函数。在该栈中,调用min、push及pop的时间复杂度为O(1)。

2016-05-29 02:11:59 570

原创 剑指offer面试题7(java实现)

题目用两个栈实现一个队列。请实现它的两个函数appendTail和deleteHead,分别完成在队列尾部插入节点和在队列头部删除节点的功能。

2016-05-28 16:40:35 661

原创 剑指offer面试题5(java实现)

题目:输入一个链表的头节点,从尾到头反过来打印每个节点的值。 链表节点的定义如下class LinkedNode { int val; LinkedNode next; public LinkedNode(int x) { val = x; } public LinkedNode() { }}

2016-05-21 23:13:02 582

原创 剑指offer面试题4(java实现)

题目请实现一个函数,把字符串中的每个空格替换成“%20”例如输入“We are happy.”则输出“We%20are&20happy.”说明要实现这个函数,对于java来说非常容易。java JDK中集成的String类可以对字符串进行多种操作,例如长度的获取、字符串的截取、字符串的替换等方法。而此题目要求的把字符串中的每个空格替换成“%20”就可以通过String类实现,没有时间复杂度的考虑。S

2016-05-21 22:22:55 530

原创 剑指offer面试题2(单例设计模式)

单例设计模式属于创建设计模式,是设计模式中很常用的一种。单例模式定义确保某个类中只有一个实例,并且自行实例化并向整个系统提供这个实例。使用场景确保某个类有且仅有一个实例,避免产生多个对象消耗过多的资源,或者某种类型的对象有且仅有一个。特点构造方法不对外公开,一般用private修饰。通过一个静态方法返回单例类的实例。确保单例类返回的对象有且仅有一个,尤其在多线程并发访问的时候。 解法一:只适

2016-05-21 20:13:05 708 1

原创 那些值得你去细细研究的Drawable适配

一直都是在自家的盒子上开发App,很少接触到Android适配的问题。但是不得不说android严重的碎片化,对于应用开发者来说,学会android适配的是必要的。意识到自己就得不足就马上行动,而Android适配的问题太多,有屏幕尺寸的适配、屏幕分辨率的适配以及android不同系统版本的适配。反映在代码上来说,就是需要在资源文件上面下功夫,主要是layout和drawable文件目录下的文件,

2016-05-03 19:39:11 8751 36

原创 剑指offer面试题3(java实现)

Question:在一个二维数组中,每一行都按照从左往右递增的顺序排列,每一列都按照从上到下递增的顺序排列。请完成一个函数,输入这样的一个二维数组和整数,判断数组中是否存在该整数。不得不说在java中并没有所谓的二维数组之类的说法,因为数组在java中也是引用数据类型,也就是可以将int[]看作是一个对象,具体定义如下int[][] array = new int[length][];`例如:int

2016-04-23 18:53:07 893

原创 LeetCode196. Delete Duplicate Emails

Write a SQL query to delete all duplicate email entries in a table named Person, keeping only unique emails based on its smallest Id.+—-+——————+ | Id | Email | +—-+——————+ | 1 | john@exa

2016-04-12 11:49:11 487

原创 android-22之HashMap学习

最近在学习数据结构和算法,对于一开始就接触java语言的我来说,感觉数据结构离java很远(当然是jdk封装的好啦)。为了更好的结合所学语言理解数据结构,就决定学习一下java中hashmap的实现原理。先声明一下本人所看的源码是android-22的hashmap源码简单介绍下哈希表哈希表Hash table,也叫散列表,是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通

2016-04-08 18:53:07 1105 3

原创 android消息机制

最近在找实习,笔试的时候有一道关于android消息机制的题目。以前也看过一些这方面的东西,但是没有可以得总结过,今天看了任玉刚的《android开发艺术探索》,趁热打铁,总计一下android消息机制。Android消息机制的主要作用是任务切换,将某个任务切换到指定的线程中执行。从应用的角度来说,主要是为了解决UI线程单线程机制的限制。系统角度(接触不多,感觉有用于AMS调度Activity的作用

2016-03-30 16:30:29 33538 16

原创 android 的分发、拦截、处理机制

简单的描述下android 的分发、拦截、处理机制。错误之处,请大家指出,共同学习

2016-03-24 16:35:15 808 1

原创 android view 的测量过程

参考任玉刚主席的《android开发艺术探索》所写。

2016-03-24 16:07:01 894 5

原创 java 中的宏变量

java中的final的一个重要用途就是定义宏变量,如果变量(无论是成员变量还是局部变量)满足以下三个条件就可以升级为“宏变量”: 1、被final修饰符修饰 2、在定义final变量时制定初始值 3、初始值在编译时就可以确定下来 备注:编译时可以确定下来是指:赋值时时确定的值或者被赋的表达式是算术运算符和简单的字符串运算,不包括变量个方法。这样,就可以变量升级为“宏变量”。

2015-12-10 20:11:49 3453 1

原创 AsyncTask java.lang.ClassCastException: java.lang.Object[] cannot be cast to java.lang.Void[] 异常

最近在学习使用AsyncTask,想用多态的思想使用即:编译类型不等于运行时类型(编译类型必须是运行时类型的父类或者运行时类型实现了编译类型接口)   private AsyncTask mCacheTask = new CacheTask(); 结果出现了java.lang.ClassCastException: java.lang.Object[] cannot be cast to

2015-10-21 09:51:31 4186

原创 android网络框架volley学习之HttpStack接口

这篇博文将介绍Volley框架的实际网络访问类HurlStack和HttpClientStack.这两个类均实现了HttpStack接口,只是采用了不同的网络访问类。HurlStack类是利用通过URL打开httpURLconnection网络通信连接,实现了网络访问。而HttpClientStack则是利用android中org.apache.http系列的开发包实现网络访问,实现过程较为简单。

2015-04-01 16:40:39 933

原创 android网络框架volley学习之基本数据类

volley网络框架中并没有直接采用android中已有的请求类和响应类,而是自己定义了这些类,将请求和响应封装在自定义的类中。为了实现缓存机制,同时定义了缓存体类和缓存头类。    在介绍Request类之前,先介绍一下请求和响应的结构。请求体是客户端向服务器发出请求的数据的包装,它由请求行、请求头和请求体构成。其中请求行中包含着请求方法(一般是GET和POST)、请求路径和所使用的协议版本

2015-03-31 20:05:33 949

原创 android网络框架volley学习之RequestQueue类

通过Volley类创建了RequestQueue对象,同时在创建之后调用了它的start()方法。作为请求体存放的地方,当然有必要分析下这个类。    分析RequestQueue类就必不可少的先得介绍一下此类中包装的四个队列:        这四个集合类构成了支撑RequestQueue的分类处理不同请求的基础。具体的体现在RequestQueue的add()方法。

2015-03-31 19:04:28 825

原创 android网络框架volley学习之Volley类

开题篇中最后提到了使用volley的三个步骤,这一篇就从步骤一的源码看起:建立RequestQueue对象。建立RequestQueue对象是同过Volley的静态方法建立的。Volley类中,提供了三个生成RequestQueue的方法。两个利用默认的缓存目录生成RequestQueue的重载方法newRequestQueue,和一个用户自定义缓存目录的newRequestQueueInDi

2015-03-29 20:03:20 786 1

原创 android网络框架volley学习之整体篇

android网络框架Volley整体来看主要有以下的接口和类:1、基本数据类Request:此类为请求类(抽象类),封装了请求体的一些属性,例如:请求方法、请求的地址、请求参数和请求头等。当然还有对应的一些方法,未实现的方法等。NetworkResponse:网络响应类,其实是一个中间转化类,最终由Request解析此类生成本地的Response类。Entry:缓存文件类,用来存

2015-03-29 09:38:36 894 3

原创 android网络框架学习之路开题篇

看过了很多人写的volley框架分析,没有深入到代码层,就觉得不痛快。嘿嘿,是我的洁癖迫使我写了这篇博客(个人技术有限,不对请指正)。学习一个框架首先得先明确它是在什么背景下提出来的,有什么好处?首先简单描述一下Volley网络通信框架,它是由Google在2013年I/O开发者大会上提出的。主要用于实现频繁的并且数据量不太大的http请求。它的设计目标是进行数据量不大,但通信频繁的网络操作,而对

2015-03-22 16:12:49 793

Android studio3.0百度网盘链接

Android studio3.0百度网盘链接........................................

2017-10-29

剑指offer面试题3(java)

剑指offer面试题3(java)

2016-04-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除