自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(63)
  • 收藏
  • 关注

原创 Rxjava并发任务

【代码】Rxjava并发任务。

2024-05-10 21:50:21 195

原创 python 提取PDF文字

不能提取扫描的pdf和插入的图片。

2024-02-23 11:18:49 694

原创 RxJava Subject

在Rxjava中,Subject可以同时表示Observer和Observable, 允许从单个源到多个子观察者。除了, 其他方法都是线程安全的,可以使用使它们线程安全。Subject有6个继承类,分别是: 释放接收到的所有数据:释放订阅前最后一个数据和订阅后接收到的所有数据:释放订阅后接收到的数据:仅释放接收到的最后一个数据:串行Subject:仅支持订阅一次的Subject。

2024-02-07 16:55:13 884 1

原创 时区、时间戳、时间点三者的关系

时区、时间戳、时间点这三个概念与Java的Date类和Calendar类紧密联系。分别说说区别。然后说一下Java的Date类和Calendar类。

2023-11-16 12:42:36 1202

原创 openpyxl学习

【代码】openpyxl学习。

2023-11-08 17:29:59 160

原创 python homework

【代码】python homework。

2023-11-07 16:40:12 89

原创 Python简单学习

【代码】Python简单学习。

2023-11-07 15:50:37 92

原创 Arouter配置指南

Arouter实现了大型App之间的轻耦合,降低代码的复杂度,易维护。如果不使用Arouter那么项目之前的关系可能是如下:底层模块间相互耦合,工程代码复杂度高,不便于管理。

2023-09-09 10:36:59 308 3

原创 Rxjava retryWhen and repeatWhen

无条件地、重复发送 被观察者事件.,具备重载方法,可设置重复创建次数。, 并根据新被观察者发送的事件,决定是否需要重新订阅原始被观察者。转换成1个 Object 类型数据传递给1个新被观察者(遇到错误时,将发生的错误传递给一个新的被观察者。有条件地、重复发送 被观察者事件。),以此决定是否重新订阅 & 发送原来的。事件,重新发射数据。

2023-09-01 13:59:53 237

原创 Leetcode

【代码】Leetcode

2023-08-11 09:36:42 222

原创 Fragment回退栈

所谓的回退栈管理其实就是将事务添加到栈中,每次popBackStack返回之前的状态。添加第二个Fragment时 Fragment1隐藏事务添加到回退栈,显示Fragment2.添加第三个Fragment时 Fragment2隐藏事务添加到回退栈,显示Fragment3.如上管理,添加第一个Fragment时 Fragment1可见。直接回退到Fragment1可见的状态。

2023-06-30 14:52:50 328

原创 Retrofit注解

访问地址: http://mock-api.com/2vKVbXK8.mock/api/staticHeaderInfo。当要访问的地址不只是动态的变几个参数,而是整个地址都要变化,甚至是基类地址也要变化时,这种动态地址就要用到。静态添加头部信息:包含添加单个头部、添加多个头部。这里具体填入的内容是后面调用该方法时传入的参数。当要访问的地址由某个参数动态拼接而成时,使用。形式拼接一个参数这种格式时,就使用。动态添加多个头部信息, 使用方法和。后面的是需要传入的参数,使用。才是需要访问的地址。

2023-06-30 09:31:52 220

原创 Retrofit学习基础

Retrofit是采用注解形式的高层封装。

2023-06-29 15:24:29 321

原创 Kotlin Asynchronous Flow

函数(which returns a flow)没有使用suspend修饰符标记的关键原因,调用本身返回很快,不等待任何东西。每次收集时,流都会重新启动,这就是为什么每次再次调用。这种方式是异步的,并且不会阻塞主线程,但是所有值是打包一起返回。是一个挂起函数,当超时后被取消,里面运行的流也会被取消。Flow代码和之前的代码有以下不同之处。可以返回多个值但是不是异步的。为了表示异步计算的数据流,使用。流的构造器,常见的就是。

2023-06-16 10:41:25 1022

原创 Kotlin委托

所谓的委托就是将一个类的方法和对象交给另外一个类的对象就行处理。

2023-06-12 11:01:37 627

原创 View的事件分发机制

从用户手指点击屏幕到抬起之间的一系列动作就是事件。具体查看类。事件分发就是分发的过程,当系统产生一个后,系统需要把这个事件传递到具体的View,这就是事件分发过程。

2023-06-09 15:05:07 492

原创 Java线程池

指定的时间之后开始周期性的执行任务,执行周期间隔为第三个参数指定的时间,但是这两个方法的区别在于第三个方法执行任务的间隔是固定的,无论上一个任务是否执行完成,而第四个方法的执行时间间隔是不固定的,其会在周期任务的上一个任务执行完成之后才开始计时,并在指定时间间隔之后才开始执行任务。使用该策略时线程池饱和后将由调用线程池的主线程自己来执行任务,因此在执行任务的这段时间里主线程无法再提交新任务,从而使线程池中工作线程有时间将正在处理的任务处理完成。使用该队列时,如果任务数大于最大线程数,会抛出异常。

2023-06-08 11:32:48 1507

原创 Java多线程学习

进程是资源分配的单位,线程是调度的单位。一个进程中可以开启多个线程运行,多个线程共享进程的资源,另外也有自己的栈空间。

2023-06-04 14:24:37 543

原创 启动Activity

【代码】启动Activity。

2023-06-02 17:17:43 48

原创 协程学习3:协程上下文和分派器

协程总是在的上下文中执行。协程上下文是各种元素的集合, 主要的元素是Job和dispatcher。

2023-05-11 16:41:36 466

原创 学习协程3:组合挂起函数

默认是顺序执行。加入有两个挂起函数,他们执行一些计算和远程的服务。如果需要他们顺序执行,先执行后执行,然后计算两个的和。在实践中,如果我们使用第一个函数的结果来决定是否需要调用第二个函数,或者决定如何调用它,我们就会这样做。我们使用正常的顺序调用,因为协程中的代码与常规代码一样,默认情况下是顺序的。下面的示例通过测量执行两个挂起函数所需的总时间来演示它。

2023-05-10 15:04:42 447

原创 学习协程2: 取消和超时

如果要处理的任务属于 1) CPU 密集型,2) 可能会耗尽线程池资源,3) 需要在不向线程池中添加更多线程的前提下允许线程处理其他任务,那么请使用 yield()。中的超时事件相对于在其块中运行的代码是异步的,并且可以在任何时间发生,甚至在从超时块内部返回之前发生。但是,如果协程在计算中工作并且不检查取消,则无法取消。对于长时间运行的程序,需要进行粒度控制,在合适的时间结束协程。块,如果需要在任何类型的超时时执行一些额外的操作,或者使用与。,但是,如果协程在计算中工作并且不检查取消,则无法取消。

2023-05-09 19:44:22 679

原创 Kotlin协程(1)

协程与线程协程是轻量级的线程,线程调度由系统负责。协程只是编译级别的,调度由编译者负责,协程运行在线程上,一个线程可以开启成千上万个协程。第一个协程程序fun main(args: Array<String>) { GlobalScope.launch { // 在主线程上启动一个协程,并执行之后的代码 delay(1000L) // 非阻塞式延迟1s println("world!")//延迟结束后打印 } println("H

2023-04-27 17:09:03 294

原创 Activity And Fragment

【代码】Activity And Fragment。

2023-04-03 17:45:54 53

原创 kotlin高阶函数

左边括号里面的是函数接收的参数类型, 右边是返回值类型,如果没有参数那么用(),没有返回值用Unit高阶函数主要是结合Lambda表达式Lambda表达式: {参数名1: 参数类型, 参数名2: 参数类型 -> 函数体}最后一行代码会自动作为Lambda表达式的返回值。

2023-03-17 12:48:47 101

原创 kotlin泛型

【代码】kotlin泛型。

2023-03-17 11:04:34 42

原创 RxJava学习:功能性操作符

RXjava功能操作符

2023-02-25 11:51:52 95

原创 RxJava学习:变换操作符

Rxjava变换操作符

2023-02-17 09:56:15 73

原创 RXJava学习1

Rxjava1

2023-02-16 17:26:38 61

原创 Jetpack学习之ViewModel

viewModel

2022-08-31 17:31:34 554

原创 Jetpack学习之Livedata

LiveData

2022-08-31 12:27:13 536 1

原创 Jetpack之ViewBinding

绑定视图

2022-08-30 16:50:06 666

原创 Fragment和Activity的生命周期

Fragment

2022-08-24 17:53:30 69

原创 RecyclerView点击子项跳转

Android

2022-08-22 17:23:51 742

原创 Json解析Json数据

Gson和Json

2022-08-22 11:05:40 223

原创 View学习

View学习一下

2022-08-16 11:34:38 912

原创 保存Activity数据

Activity后台杀死保存数据

2022-08-09 11:48:57 432

原创 Activity实战

安卓Activity实战

2022-08-09 11:11:56 677

原创 Android开发学习第一课

Android Studio目录结构,资源放置

2022-08-05 18:13:09 716

原创 JAVA学习

Java简单学习记录

2022-08-04 13:29:07 128

空空如也

空空如也

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

TA关注的人

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