自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

欢迎关注微信公众号:DroidMind

技术干货,工具分享

  • 博客(13)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java中的BlockingQueue系列

一、BlockingQueue BlockingQueue是java.util.concurrent包下的一个接口,它是一个线程安全的队列,所以它最典型的用途就是生产者-消费者模式。生产线程生产对象放入队列,如果队列放满,该线程就处于阻塞状态,直到消费线程从队列中取出对象进行消费。 消费线程从队列中取出对象进行消费,如果队列为空,该线程处于阻塞状态,直到生产线程生成一个新对象放入队列。...

2016-08-20 12:04:11 1302

原创 Android内存优化

一、内存泄漏1、集合类泄漏2、单例造成的内存泄漏3、匿名内部类/非静态内部类4、异步线程5、Handler 造成的内存泄漏6、资源对象没关闭造成的内存泄露7、注册某个对象后未反注册尽量避免使用 static 成员变量 避免 override finalize() 资源未关闭造成的内存泄漏二、避免创建不必要的对象1、避免Activity的重复创建 (1)...

2016-08-09 10:23:37 452

原创 Android中使用注解替代枚举

枚举最大的作用是提供了类型安全。为了弥补Android平台不建议使用枚举的缺陷,官方推出了两个注解,IntDef和StringDef,用来提供编译期的类型检查。首先,引入依赖包:compile 'com.android.support:support-annotations:22.0.0'public class MyConstants { public static ...

2016-08-07 18:21:58 6931 3

原创 说说双端队列

一、双端队列定义:是指允许两端都可以进行入队和出队操作的队列。二、输出受限双端队列定义:允许一端进行插入和删除操作,但是另一端只允许插入的双端队列三、输入受限双端队列定义:允许一端进行插入和删除操作,但是另一端只允许删除的双端队列

2016-08-21 12:45:27 1112 2

原创 说说平衡二叉树

一、定义保证任意结点的左、右子树的高度差的绝对值不超过1。这个高度差就是平衡因子,取值只可能为-1,0,1。二、平衡二叉树的插入由于插入一个结点之后,可能导致二叉树失去平衡,即不满足定义,所以需要进行调整。需要注意的是:每次调整的对象都是最小不平衡子树,即插入路径上离插入结点最近的平衡因子大于1的结点作为根的子树。1、LL平衡旋转(右单旋转) (1)LL平衡旋转就是在结点A的左孩子的左子树上插入一

2016-08-21 01:11:09 878

原创 android之View坐标解析

1、view获取自身坐标:getLeft(),getTop(),getRight(),getBottom()getTop:是view自身的顶边到其父布局顶边的距离getLeft:是view自身的左边到其父布局左边的距离getRight:是view自身的右边到其父布局左边的距离getBottom:是view自身的底边到其父布局顶边的距离2、view获取自身宽高:getHeight(...

2016-08-18 11:31:59 651

原创 获取应用Shortcut在Launcher坐标信息

当点击桌面的Launcher图标的时候,执行的是Launcher.java中的onClick()方法,我们来看看这个方法。public void onClick(View v) { // Make sure that rogue clicks don't get through while allapps is launching, or after the // view...

2016-08-18 10:39:12 1405

原创 剑指Offer——替换空格

题目:请实现一个函数,把字符串中的每个空格替换成”%20”,例如,输入”We are happy.”,则输出”We%20are%20happy.”。思路:通过两次遍历进行处理,第一次遍历统计字符串的所有空格数量,计算替换之后字符串的长度,并且为新字符串分配空间,第二次是从尾部遍历字符串,并且从尾部开始把一个一个字符复制到新分配的空间中去,遇到空格就替换,这样就避免了数组的重复平移操作。代码:publ

2016-08-14 17:14:28 353

原创 剑指Offer——二维数组中的查找

题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否有该整数。思路:右上角第一个元素开始查找,如果第一个元素大于目标元素,因为每列都是从小到大排列的,则说明该列的所有元素都大于目标元素,所以可以把该列排除,接着看从右往左第二列,重复之前的操作,如果该列的第一个元素小于目标元素,因为每行是从小到

2016-08-14 11:08:13 419

转载 统计本地Git仓库中不同贡献者的代码行数的一些方法

简单的查看和统计 1.显示所有贡献者及其commit数git shortlog –numbered –summary2.只看某作者提交的commit:git log –author=”eisneim” –oneline –shortstat显示行数的统计:1.Mac,Linux下可以git log –shortstat –pretty=”%cE” | sed ‘s/\(.*\)@.*/\1/’ |

2016-08-13 09:23:42 6314

原创 Android屏幕旋转重建小结

一、. AndroidManifest.xml设置 单单想设置横屏或者竖屏,那么只需要添加横竖屏代码:// 横屏设置android:screenOrientation="landscape"// 竖屏设置android:screenOrientation="portrait"那么,默认的情况下,应用启动后,会固定为指定的屏幕方向,即使屏幕旋转,Activity也不会出现销毁或者...

2016-08-07 17:55:44 3160 3

原创 Android代码模拟物理、屏幕点击事件

一、应用中模拟物理和屏幕点击事件例如,模拟对某个view的点击事件private void simulateClick(View view, float x, float y) { long downTime = SystemClock.uptimeMillis(); final MotionEvent downEvent = MotionEvent.obtain(do...

2016-08-03 19:50:28 14341

原创 Android中Home键的监听和代码操作程序Home键退出

一、Home键的监听public class HomeWatcherReceiver extends BroadcastReceiver { private static final String TAG = "HomeReceiver"; private static final String SYSTEM_DIALOG_REASON_KEY = "reason"; ...

2016-08-03 18:10:17 2885

方正飞腾排版快捷键

好东西, 一定要看,把所有的方正飞腾快捷键囊括在内,好好看,一定要下哦

2012-03-11

空空如也

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

TA关注的人

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