- 博客(4)
- 收藏
- 关注
原创 RXJava调用顺序理解
Rxjava的使用就不多说了,网上一大堆文章做介绍,这里主要讲一下RxJava的函数调用顺序的理解。 使用Rxjava的时候一般顺序是: 构建Observable 链式调用操作符 执行subscribe 发送数据,调用发射器的onNext 那么先从一开始的调用顺序讲 构建Observable 按照一般的构建,以create方法为例: @CheckReturnValue @NonNull @SchedulerSupport(SchedulerSupport.NONE) public static <
2021-04-20 02:14:36 1445
原创 AsyncTask学习笔记
AsyncTask定位 AsyncTask是Android封装的一个用于线程切换的方便的工具类,属于一个抽象类,通过继承它来达到后台执行任务,并且把任务细节通知给前台view刷新显示的目的。如果用Java写Android,依然是推荐使用的,但是如果是用Kotlin官方则是推荐使用Kotlin的协程类来完成这类的任务。 AsyncTask优点 对于一个后台任务,是自己使用线程池还是自己新建线程还是用AsyncTask,这三种方式到底谁更好呢,从原理上来讲: AsyncTask的执行原理其实等价于自己维护线程池
2021-04-05 18:19:06 116
原创 C语言里的数组指针
对数组地址的理解 1.数组别名本身是一个指针,对数据取下表实际上是先通过下表取指针,然后通过指针取值 arr指向数组头的指针 [n]->取得指针后对其进行n位偏移后作 * 对指针取值的操作 2.数组本身是被编译器做了优化的,arr是存放数组第一个元素的指针,那么&arr应该是指向这个指针的指针,然而编译器对其进行了优化,&arr会直接返回arr的值,从而使得本来是指向指针的指针返回了指向数组第一个元素的指针 所以有结论&arr == &arr[0] == arr 为
2021-03-21 23:18:12 2019
原创 C语言星号作用区分和多级指针的理解
首先对指针分级要有一个比较清晰的认知: 变量本身一定会有一个内存地址,不管他是基本类型变量或是指针型变量 指针型变量所保存的值是他指向的内存的地址 定义的时候 int* 代表指向一块int变量内存地址的指针int** 代表指向一块int变量指针的内存的指针 这么说可能不太好理解,看下面这个图可以帮助理解 可以看到变量app指向的实际上是指针ap,而不是a,我们改变ap的指向也不会影响到app的指向。 这个图也可以很好的解决为什么打印&a是一个地址,而打印&ap是另一个地址,因为&
2021-03-21 18:20:46 833
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人