
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
栈(Stack)Last In First Out(LIFO) 后进先出栈也是一种线性数据结构代码实现栈考虑到需要扩容,所以我们使用ArrayList最为底层的动态数组支持。interface Stack<E> {//获取栈的大小fun getSize(): Int//栈是否为nullfun isEmpty(): Boolean//出栈fun pop(): E//获取栈尾元素fun p
Hi ,很高兴见到你!引言在使用 ViewPager 时 , 如果我们的适配器使用的是 FragmentStatePagerAdapter ,那么当我们重新滑到之前已销毁的页面时,一般情况下页面的状态依然将保持不变(比如 RecyclerView 的 滚动位置等,EditText 的 输入内容 等), 或者说 View 历史状态被还原了。本文的主旨就是解释其 保存与还原内部的原理以及过程。基础概念
FloatingX ,一个强大的免权限悬浮窗组件,支持全局,以及局部悬浮窗。背景在前几个月的业务开发中,我们 app 需要对悬浮窗进行更改,常见的悬浮窗实现方式分为两种:前者是获取权限后,利用 WindowManager 实现后者是基于 DecorView 实现的插入悬浮窗选用怎样的方案,主要根据业务的定向, 因为我们的业务不是视频通话类,而是菜谱工具类,所以我们不愿意让用户为此去设置中授予权限,

数据结构算法有什么用?当你用着java里面的容器类很爽的时候,你有没有想过,怎么ArrayList就像一个无限扩充的数组,也好像链表之类的。好用吗?好用,这就是数据结构的用处,只不过你在不知不觉中使用了。只不过java已经帮你实现了经典语段: 如果说 Java 是自动档轿车,C 就是手动档吉普。数据结构呢?是变速箱的工作原理。你完全可以不知道变速箱怎样工作,就把自动档的车子...
注明: 非常感谢gcssloop的博客,以下为我学习时的笔记记录。Canvas常用速查表操作类型相关API备注绘制颜色drawColor, drawRGB, drawARGB使用单一颜色填充整个画布绘制基本形状drawPoint, drawPoints, drawLine, drawLines, drawRect, drawRou...
注明: 非常感谢gcssloop的博客,以下为我学习时的笔记记录。更多Android学习笔记,请关注Android-NoteBook,欢迎Star。一.Canvas的常用操作速查表操作类型相关API备注绘制颜色drawColor, drawRGB, drawARGB使用单一颜色填充整个画布绘制基本形状drawPoint, d...
Cannot access ‘androidx.lifecycle.HasDefaultViewModelProviderFactory’ which is a supertype of ‘com.example.a19.MainActivity’. Check your module classpath for missing or conflicting dependencies今天创建了个项
众所周知,相同包名的APP,是不能同时安装的,但是我们实际开发中,测试同学往往在测试环境没问题,上了生产环境,却发现了bug,这时候就只能卸载生产环境的包,再去安装测试环境。如果没有开发流程中缺少自动化打包或者测试同学不保存蒲公英二维码,这时候就会产生多余时间成本。那么有没有一种可能,同时安装测试与生产环境的包呢?这个当然是可以的,我们更换包名就行了,Android Studio早已为我们准备了.
什么是TCP/IP协议?计算机与网络设备之间如果要相互通信,双方就必须基于相同的方法.比如如何探测到通信目标.由哪一边先发起通信,使用哪种语言进行通信,怎样结束通信等规则都需要事先确定.不同的硬件,操作系统之间的通信,所有这一切都需要一种规则.而我们就将这种规则称为协议 (protocol).也就是说,TCP/IP 是互联网相关各类协议族的总称。TCP/IP 的分层管理TCP/IP协...