240 发简信
IP属地:北京
  • ViewModel

    我们都知道ViewModel在配置更改的时候,可以保存数据而不被销毁,这是怎么做到的呢?今天我们来见证一下。 我们可以想一下,如果我们要自己实现数据在配置更改后,不会销毁,我...

  • 240
    踩坑之路:Flutter Lottie动画组件踩坑

    背景 Flutter中我使用的是这个Lottie组件[https://github.com/xvrh/lottie-flutter]我在做一个点赞的动画的时候,就是很简单的将...

  • android加载动态webp图片

    对于安装大小的优化,占用最多的就是图片资源。把图片资源文件替换webp格式可以大大减少包的体积。 webp是一种图片文件格式,webp默认只支持Android4.0以上。但是...

  • 240
    深入理解HashMap

    简述 HashMap是一种比较常见的map子类,是由数组+链表组成(JDK8以后采用的是数组+链表+红黑树的形式)。元素是以键值对的形式存在,并且允许使用null作为键和值存...

  • Java泛型

    1、为什么需要泛型? 1.1可以为多种数据类型执行相同的代码 我们可以看到上面这段代码,int类型,float类型都有各自的加法方法,如果我们还要增加double类型的话,我...

  • Java注解

    1.注解是什么,有什么意义 注解本身没有任何意义,单独的注解就是一种注释,他需要结合其他如反射、插桩等技术才有意义。 Java 注解(Annotation)又称 Java 标...

  • Java反射

    这里我们对反射的基础知识不会介绍,主要内容是相对深入一些的知识点和需要注意的点,以及给出一些使用上的示例,如果对基础知识需要了解的可以参考这边文章,Java高级特性——反射[...

  • 240
    Java死锁

    了解死锁之前,我们要先了解线程的状态,或者叫线程的生命周期。 线程的状态主要分为上图中的这几种状态,这里我们需要注意一下几点: 初始状态new出的一个线程对象,注意此时线程并...

  • Java-ThreadLocal

    定义 线程本地变量,也有些地方叫做线程本地存储,其实意思差不多。ThreadLocal可以让每个线程拥有一个属于自己的变量的副本,不会和其他线程的变量副本冲突,实现了线程的数...