- 博客(24)
- 资源 (4)
- 收藏
- 关注
原创 通用正则表达式总结
通用正则表达式总结一、概念正则表达式(Regular Expression)是一种特殊的字符串模式,用于定义一种规则去匹配符合规则的字符。二、用途用途例子涉及类字符串的匹配(字符匹配)IP地址是否正确java.lang.String字符串查找从网页中揪出Email地址java.util.regex.Pattern字符串替换将手机号部分替换成 *java.util.regex.Matcher三、语言1. 元字符字符描述\将
2020-12-12 22:50:40
319
1
原创 Android Studio强制清除Gradle的缓存
一、滑重点命令: gradlew build --refresh-dependencies二、 使用打开 Android Studio 的 Terminal 命令窗口直接在默认路径输入上述命令清除成功
2020-09-14 11:31:54
4403
原创 OkHttp的分发器线程池
public synchronized ExecutorService executorService() { if (executorService == null) { executorService = new ThreadPoolExecutor(0, Integer.MAX_VALUE, 60, TimeUnit.SECONDS, new Sync...
2020-04-06 17:11:46
608
1
原创 2019年一文读懂Vector
Vector Vector一、简介1.1 源码分析1.2 使用建议二、特点2.1 初始化 Vector 的大小,未指定时默认是102.2 数据都存储在数组中2.3 扩容第一种情况:默认构造函数第二种情况:自定义初始容量的构造函数第三种情况:自定义初始容量 和 扩容大小的构造函数第四种情况:传入 Collection 集合方式的构造函数注意:为什么要将大小减8?一、简介Vector底层的数...
2019-11-03 15:43:08
324
原创 2019年一文读懂LinkedList
LinkedList LinkedList一、简介1.1 源码分析1.2 注意1.3 使用建议二、特点2.1 初始化 LinkedList 时采用懒加载模式2.2 保存了链表的头尾元素的引用,通过每个元素头尾引用将数据串行2.3 添加数据2.4 删除元素2.5 查找元素三、常见问题3.1 与 ArrayList 相比较一、简介LinkedList 底层的数据结构是 “双向链表”,它的每个...
2019-11-02 15:52:38
219
原创 2019年一文读懂ArrayList
ArrayList ArrayList一、简介二、特点2.1 初始化ArrayList的大小,未指定时默认是102.2 数据都存储在数组中2.3 扩容第一种情况:自定义初始容量的构造函数第二种情况:传入 Collection 集合方式的构造函数第三种情况:默认构造函数注意:为什么要将大小减8?一、简介ArrayList 底层的数据结构是 “数组”,它会随着元素的增加而动态扩容,它是线程不...
2019-10-28 00:52:42
233
原创 2019年一文读懂HashMap
HashMap一、目录 HashMap一、目录二、简介三、内部成员变量以及特点2.1 初始化 Map 的大小,未指定时默认是162.2 数据都存储在数组中2.3 容量系数 threshold ,当 HashMap 的 size 大于容量系数时会执行扩容操作2.4 负载因子 `loadFactor` 【默认0.75】,存储的数据超过 初始容量 * 容量系数 时触发扩容 `两倍` 容量2.5 封装...
2019-10-20 21:45:48
524
1
原创 Android 数据库之 Room(五)
Android 数据库之 Room(四)一、简介Room 是 Google 推出的数据库框架。该持久型类库在SQLite的基础上提供了一个抽象层,允许流畅的访问SQLite数据库,全面强大的直接SQLite。SQL 查询在编译期就会验证;较少的模板代码;支持 LiveData 集成。二、集成在项目级别的 build.gradle 中:buildscript { ...
2019-10-08 02:34:50
585
1
原创 Android 数据库之 Realm(四)
Android 数据库之 Realm(四)一、简介Realm 是 YCombinator 团队专门针对移动平台设计的数据库,目前支持 IOS、 Android平台,支持Objective-C、 Swift、Java、 React Native等编程语言。该数据库没有采用 SQLite 数据库,而是使用独立的内部数据引擎C++开发的。开源:目前 Realm 相关代码已全部开源,有社区有团...
2019-10-08 00:49:41
328
原创 Android 数据库之 ObjectBox (三)
Android 数据库之 ObjectBox (三)一、简介ObjectBox 是 greenrobot 公司开发的全新非关系型数据库框架,目前最新的版本是 v2.3.4 。该数据库并没有采用 Android 原生的 SQLite 数据库,而是使用上注重性能与资源使用的序列化类库 FlatBuffers 做封装,将数据用字节的方式存储在文件中。数据处理快:目前移动端顶尖高性能的数据库;...
2019-10-06 01:32:37
1497
1
原创 Android 开发中的MVC、 MVP、 MVVM
Android 开发中的MVC、 MVP、 MVVM一、MVC层级解释层级描述Model数据处理层(如网络请求,数据库操作等)Viewlayout 、 View控件ControllerActivity 、 Fragment(业务逻辑处理、获取用户输入、更新页面数据)优缺点优点: 一定程度上实现了Model 与 View 的分离,降低了代...
2019-10-01 23:06:18
144
转载 利用run-as命令在不root情况下读取data下面的数据
前言这里分享一则,想在不使用 shareUserId 来实现多 APK 共享资源,也建议谨慎使用 shareUserId。正文一、关键操作主要是 run-as 命令: over@over-ThinkPad-R52:~$ adb shell $ run-as com.package $ cd /data/data/com.package $ ls databases...
2019-09-28 18:35:45
641
原创 Android 数据库之 GreenDAO(二)
Android 数据库之 GreenDAO(二)一、简介GreenDAO 是 greenrobot 公司于 2011年7月29日 发布的 对象/关系映射(ORM)。它的本质是为存储在关系数据库 SQLite 中的数据提供面向对象的接口。只需为数据模型定义,GreenDAO 将创建 Java 数据对象(实体)和 DAO (数据访问对象)。体积小: 目前 v3.2.2 版本总体积小于26...
2019-09-25 02:58:15
1136
1
原创 Android 数据库之 SQLite (一)
Android 数据库之 SQLite一、数据存储Android 平台进行数据存储有五大方式,分别如下:1、 使用 SharedPreferences 存储数据;2、 文件 File 存储数据;3、 使用 SQLite 存储数据【轻量级嵌入式数据库引擎】;4、 使用 ContentProvider 存储数据【抽象接口,提供外部应用调用】;5、 网络 Network 存储数据。二...
2019-09-25 02:08:53
268
转载 java多线程与线程间通信
本文学习并总结java多线程与线程间通信的原理和方法,内容涉及java线程的众多常见重要知识点,学习后会对java多线程概念及线程间通信方式有直观清晰的了解和掌握,可以编写并分析简单的多线程程序。进程与线程进程:是一个正在执行的程序。每一个进程执行都有执行顺序,一个执行顺序是一个执行路径,或者叫控制单元;每一个程序启动时,都会在内存中分配一片空间,进程就用于标识这片空间,并
2016-11-22 11:06:02
371
原创 final、finally、finalize的区别
final修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。被声明为final的方法也同样只能使用,不能重载。
2016-10-26 20:56:12
276
原创 HashMap的工作原理
HashMap的工作原理 HashMap基于hashing原理,我们可以通过put(key, value)存储对象到HashMap中,可以通过get(key)从HashMap中获取对象。当我们将键值对传递给put()方法时,它先会调用key(键对象)的hashCode()方法来计算其hashCode,然后通过hashCode找到bucket位置的Entry对象(里面储存了key(键对象)
2016-10-18 13:51:41
284
转载 Android内存优化大全
Android内存优化大全(中)标签: 内存优化内存2014-09-02 11:50 51308人阅读 评论(7) 收藏 举报转载请注明本文出自大苞米的博客(http://blog.youkuaiyun.com/a396901990),谢谢支持!写在最前:本文的思路主要借鉴了2014年AnDevCon开发者大会的一个演讲PPT,加上把网上
2016-10-18 00:52:54
196
转载 深入浅出RxJava四-在Android中使用响应式编程
原文链接在第1,2,3篇中,我大概介绍了RxJava是怎么使用的。下面我会介绍如何在Android中使用RxJava.RxAndroidRxAndroid是RxJava的一个针对Android平台的扩展。它包含了一些能够简化Android开发的工具。首先,AndroidSchedulers提供了针对Android的线程系统的调度器。需要在UI线程中运行某些代码?很简
2016-10-16 22:08:24
276
转载 深入浅出RxJava三--响应式的好处
原文链接在第一篇中,我介绍了RxJava的基础知识。第二篇中,我向你展示了操作符的强大。但是你可能仍然没被说服。这篇里面,我讲向你展示RxJava的其他的一些好处,相信这篇足够让你去使用Rxjava.错误处理到目前为止,我们都没怎么介绍onComplete()和onError()函数。这两个函数用来通知订阅者,被观察的对象将停止发送数据以及为什么停止(成功的完成或者出错了)
2016-10-16 22:05:44
222
转载 深入浅出RxJava(二:操作符)
原文链接在第一篇blog中,我介绍了RxJava的一些基础知识,同时也介绍了map()操作符。当然如果你并没有意愿去使用RxJava我一点都不诧异,毕竟才接触了这么点。看完这篇blog,我相信你肯定想立即在你的项目中使用RxJava了,这篇blog将介绍许多RxJava中的操作符,RxJava的强大性就来自于它所定义的操作符。首先先看一个例子:准备工作假设我有这样一个方
2016-10-16 10:01:34
235
转载 深入浅出RxJava(一:基础篇)
原文链接RxJava正在Android开发者中变的越来越流行。唯一的问题就是上手不容易,尤其是大部分人之前都是使用命令式编程语言。但是一旦你弄明白了,你就会发现RxJava真是太棒了。这里仅仅是帮助你了解RxJava,整个系列共有四篇文章,希望你看完这四篇文章之后能够了解RxJava背后的思想,并且喜欢上RxJava。基础RxJava最核心的两个东西是Observa
2016-10-16 09:55:28
234
转载 GitHub前100的开源库,非常实用
本项目主要对目前 GitHub 上排名前 100 的 Android 开源库进行简单的介绍, 至于排名完全是根据GitHub搜索Java语言选择「Best Match」得到的结果,然后过滤了跟Android不相关的项目,所以排名并不具备任何官方效力,仅供参考学习,方便初学者快速了解当前一些流行的Android开源库。1. React Native 这个是 Facebook 在 Re
2016-10-09 02:40:47
677
Google Pixel IMS 提供的手机端通话软件 apk(非 root 方法)
2024-08-02
Shizuku 工具 v13.5.4 下载
2024-08-02
秋之盒(此工具箱供 Windows 平台)
2024-08-02
Android-5.1.1-r1源码-系统签名文件(包含platform.pk8、platform.x509.pem和signapk)
2017-06-05
ADT-23.0.7(共两部分).7z.001
2016-11-07
ADT-23.0.7(共两部分).7z.002
2016-11-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人