杨充
GitHub:https://github.com/yangchong211
展开
-
17.如何设计工业级Map
目录介绍01.造成ANR的原因02.问题描述03.ActivityThread中main方法04.Looper.loop()方法无限循环05.处理消息handleMessage方法06.loop的循环消耗性能吗?07.得出结论好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug...原创 2019-04-20 16:13:39 · 2043 阅读 · 2 评论 -
16.如何设计工业级Set
目录介绍01.什么是对象池02.glide哪里用到对象池03.多条件key缓存bitmap3.1 多条件key创建3.2 key值的复用04.glide对象池总结05.学以致用对象池5.1 使用场景5.2 实现步骤5.3 对象池使用5.4 项目实践分享06.对象池的容量好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Androi...原创 2019-04-10 19:15:04 · 595 阅读 · 0 评论 -
15.如何设计工业级List
目录介绍01.栈由简单数据实现1.1 简单数组代码实现1.2 可能出现问题1.3 性能和局限性02.栈由动态数组实现2.1 基于简单数组存在问题2.2 第一种解决办法2.3 第二种解决办法2.4 动态数组实现栈代码2.5 性能和局限性03.栈由链表实现3.1 使用链表的优势3.2 链表实现栈代码3.3 性能和局限性04.Android栈Stack源...原创 2019-04-09 13:38:18 · 533 阅读 · 1 评论 -
14.如何快速查找元素
目录介绍1.复杂页面库介绍2.本库优势亮点2.1 支持多种状态切换管理2.2 支持添加多个header和footer2.3 支持侧滑功能和拖拽移动2.4 其他亮点介绍3.如何使用介绍3.1 最基础的使用3.2 添加下拉刷新和加载更多监听3.3 添加header和footer操作3.4 设置数据和刷新3.5 设置adapter3.6 设置条目点击事件3.7 设置...原创 2019-04-07 12:24:37 · 308 阅读 · 1 评论 -
13.排序的思想和优化
13.排序的思想和优化目录介绍1.基本思想很好理解,从字面意思就知道类似于冒泡。在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒。即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将它们互换。2.排序过程比较相邻的两个数据,如果第二个数小,就交换位置。从后向前两两比较,一直到比较最前两个数据。最终最小数被交换到起始的位置,这样第一个最小数的位置就排好。继续重复上述过程,依次将第2.3…n-1个最小数排原创 2019-03-29 09:33:01 · 118 阅读 · 1 评论 -
12.散列表设计思想和原理
目录介绍01.对象拷贝有哪些02.理解浅拷贝2.1 什么是浅拷贝2.2 实现浅拷贝案例03.理解深拷贝3.1 什么是深拷贝3.2 实现深拷贝案例04.序列化进行拷贝4.1 序列化属于深拷贝4.2 注意要点4.3 序列化案例05.延迟拷贝06.如何选择拷贝方式07.数组的拷贝7.1 基本数据类型数组7.2 引用数据类型数组08.集合的拷贝...原创 2019-03-25 15:50:53 · 337 阅读 · 1 评论 -
11.Hash常见操作实践
目录介绍01.invalidate,requestLayout,postInvalidate区别02.invalidate深入分析03.postInvalidate深入分析04.requestLayout深入分析05.ViewRootImpl作用分析06.这几个方法总结好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python...原创 2019-03-23 09:51:16 · 260 阅读 · 0 评论 -
10.递归经典设计场景
目录介绍01.什么是绑定02.静态和动态绑定03.辅助理解jvm图04.动态绑定编译原理05.动态绑定运行原理06.两者之间区分好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug汇总,当然也在工作之余收集了大量的面试题,长期更新维护并且修正,持续完善……开源的文件是markdo...原创 2019-03-14 17:02:58 · 767 阅读 · 1 评论 -
09.图表设计思想和原理
目录介绍01.基本类型和引用类型02.什么是值传递03.什么是引用传递04.通过案例分析05.案例过程分析06.得出的结论好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug汇总,当然也在工作之余收集了大量的面试题,长期更新维护并且修正,持续完善……开源的文件是markdown格...原创 2019-03-14 17:02:17 · 257 阅读 · 1 评论 -
08.红黑树经典设计场景
目录介绍01.static的作用02.static变量存储位置03.用static静态变量潜在性问题04.静态变量的生命周期05.静态变量何时销毁06.静态引用的对象回收07.静态方法变量内存图好消息博客笔记大汇总【16年3月到至今】,包括Java基础及深入知识点,Android技术博客,Python学习笔记等等,还包括平时开发中遇到的bug汇总,当然也在工作之余收集了大量...原创 2019-03-14 17:01:27 · 551 阅读 · 1 评论 -
07.二叉树设计和用途
目录介绍01.项目介绍02.项目运行03.项目部分介绍04.项目组件化结构05.项目版本更新06.项目第三方库07.项目遇到bug08.项目截图展示09.项目优化处理10.组件化博客11.其他介绍01.项目介绍1.1 项目简介项目整体架构模式采用:组件化+MVP+Rx+Retrofit+design+Dagger2+阿里VLayout+腾讯X5+腾讯bugly包...原创 2019-03-06 16:38:44 · 879 阅读 · 0 评论 -
06.队列设计思想和原理
目录介绍01.创建项目步骤1.1 项目搭建1.2 项目功能02.自定义注解03.创建Processor04.compiler配置文件05.编译jar06.如何使用07.编译生成代码08.部分源码说明8.1 Process类-process方法8.2 OnceProxyInfo代理类8.3 OnceMethod类好消息博客笔记大汇总【16年3月到至今】...原创 2019-02-27 18:46:32 · 522 阅读 · 1 评论 -
05.栈设计思想和原理
栈设计思想和原理原创 2019-02-24 16:28:59 · 243 阅读 · 1 评论 -
04.链表实现Lrc算法
目录介绍01.原生跳转实现02.实现组件跳转方式2.1 传统跳转方式2.2 为何需要路由03.ARouter配置与优势04.跨进程组件通信4.1 URLScheme4.2 AIDL4.3 BroadcastReceiver4.4 路由通信注意要点05.ARouter的结构06.ARouter的工作流程6.1 初始化流程6.2 跳转页面流程07.AR...原创 2019-02-20 17:54:05 · 917 阅读 · 0 评论 -
03.链表设计思想和用途
目录介绍8.0.0.1 简述Android的事件分发机制?dispatchTouchEvent方法的作用是什么?说下View和ViewGroup分发事件?8.0.0.2 onInterceptTouchEvent方法作用是什么?onTouchEvent的方法的作用是什么?8.0.0.4 滑动冲突有哪些场景?滑动冲突处理原则是什么?滑动冲突解决办法有哪些?分别是如何解决的?8.0.0.5 ...原创 2019-02-14 16:37:44 · 186 阅读 · 1 评论 -
02.数组深入浅出分析
目录介绍7.0.0.1 加载bitmap图片的时候需要注意什么?为何bitmap容易造成OOM?如何计算Bitmap占用内存?7.0.0.2 如何理解recycle释放内存问题?图片加载到内存其实有两部分数据,这是为何?7.0.0.3 如何在不压缩图片的情况下加载高清大图?加载图的机制是什么,为何不会内存泄漏?7.0.0.7 LRU算法的原理?核心思想是什么?如果缓存满了的话,什么方法来...原创 2019-02-14 16:33:18 · 183 阅读 · 1 评论 -
01.数据结构算法指引
目录介绍1.为什么要组件化1.1 为什么要组件化1.2 现阶段遇到的问题2.组件化的概念2.1 什么是组件化2.2 区分模块化与组件化2.3 组件化优势好处2.4 区分组件化和插件化2.5 application和library3.创建组件化框架3.1 传统APP架构图3.2 组件化需要考虑问题3.3 架构设计图3.4 组件通信是通过路由转发3.5 解...原创 2019-01-22 17:40:38 · 332 阅读 · 1 评论 -
数据结构-Hash常见操作实践
数据结构-Hash常见操作实践原创 2023-02-02 19:26:34 · 950 阅读 · 0 评论