首页 > 其他分享 >复习笔记

复习笔记

时间:2024-05-11 17:31:09浏览次数:14  
标签:初始化 复习 adapter TestAdapter 笔记 lateinit onCreate 变量

1. 对变量延迟初始化

延迟初始化使用的是lateinit关键字,它可以告诉Kotlin编译器,我会在晚些时候对这个变量进行初始化,这样就不用在一开始的时候将它赋值为null。

当你对一个全局变量使用了lateinit关键字时,请一定要确保它在被任何地方调用之前已经完成了初始化工作,否则Kotlin将无法确保程序的安全性。

    private lateinit var adapter: TestAdapter

  另外,我们还可以通过代码来判断一个全局变量是否已经完成了初始化,这样在某些时候能够有效地避免重复对某一个变量进行初始化操作。

    private lateinit var adapter: TestAdapter
    
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_recycler)
     ...
        if (!::adapter.isInitialized){
            adapter = TestAdapter(data)
        }
        ...
    }

  具体的语法就是这样,::adapter.isInitialized可用于判断adapt变量是否已经初始化。虽然语法看上去有点奇怪,但这是固定的写法。

 

标签:初始化,复习,adapter,TestAdapter,笔记,lateinit,onCreate,变量
From: https://www.cnblogs.com/touchmore/p/18186887

相关文章

  • 软件测评笔记04--操作系统
    编译原理高级语言源程序中的错误分为两类:语法错误和语义错误,其中语义错误可分为静态语义和动态语义错误语法错误:语言结构上的错误静态语义错误:编译时能发现的程序含义上的错误动态语义错误:只有程序运行时才能表现出来 程序编译过程过程:词法分析、语法分析、语义分析词法......
  • 分块 学习笔记
    什么是分块分块,顾名思义是一种将数据分成多块,以实现一些功能的算法。分块算法实质上是一种是通过将数据分成多块后在每块上打标记以实现快速区间修改,区间查询的一种算法。其均摊时间复杂度为\(O(\sqrt{n})\)分块的具体操作分块voidcreate(){ t=sqrt(n); for(inti=1;i<......
  • DSP学习笔记之IIC
    IIC简介IIC总线是同步通信的一种特殊形式,是一种串行,半双工的通信,I2C总线只有两根双向信号线。一根是数据线SDA,另一根是时钟线SCL。IIC分为硬件IIC和软件IIC,DSP中有硬件IIC,但是不方便拓展,所以日常使用时使用软件IIC居多。IIC总线通信过程主机发送起始信号启用总线主机发送......
  • DSP学习笔记之SPI
    DSP学习笔记之SPISPI介绍SPI的全称是"SerialPeripheralInterface",意为串行外围接口。SPI是一种高速的,全双工,同步的通信总线,SPI采用主从方式工作,一般有一个主设备和一个或多个从设备;SPI需要至少4根线,分别是MISO(主设备输入从设备输出)、MOSI(主设备输出从设备输入)、SCLK(时钟)、C......
  • 软件测评笔记03--软件测试
    软件测试的对象程序、数据、文档 ,跟人没有关系 测试用例要设计有效的功能测试用例,应该做到1、测试用例应该100%地覆盖测试业务需求2、利用场景法模拟核心业务流程的正确执行3、利用场景法设计测试用例时,往往是一个业务流程需要多条验证数据4、利用边界值法设计测试用例,......
  • 【学习笔记】Python 装饰器
    装饰器是Python中一种非常强大的语法特性,它允许你在不改变函数代码的情况下,动态地增加功能。装饰器本质上是一个函数,它接受一个函数作为参数,并返回一个新的函数。下面是Python装饰器的基本语法:defdecorator_function(original_function):defwrapper_function(*args,*......
  • WIN10的BUG:语言栏快捷键重启丢失的问题(解决笔记)
    这个问题据说已存在多年,但一直没有解决:crtl+shift+del导致切换语言的热键丢失-MicrosoftCommunity经过下文的引导,发现真存在这个可能性,参照下文的方法解决W10修改输入法快捷键及快捷键BUG解决-知乎(zhihu.com)在我的电脑中是这样设置的:而这个“美式键盘”的快捷方式每次......
  • 软件测评笔记02--软件工程
     设计模式UML支持13种图,可分为两大类结构图:类图、组合结构图、构件图、部署图、对象图、包图行为图:活动图、交互图(顺序图、通信图、交互概览图、时序图)、用例图、状态图主要作用:数据流图-功能建模实体联系图-数据建模状态迁移图-行为建模开发模型V模型:包括低层测试又......
  • 读书笔记
    《Core.Software.Security.Security.at.the.Source.CN.软件安全.从源头开始》读书笔记概览本书深入探讨了从源头保障软件安全的基本方面,为软件开发生命周期(SDL)中嵌入安全性提供了全面指南。它是开发人员、安全专业人士和软件架构师的重要资源。主要内容概览《软件安全:从源头开......
  • python异常的一些代码笔记
    点击查看代码whileTrue:try:x=int(input("请输入一个数字:"))print("你输入的数字是:",x)except:print("异常,输入的不是数字:")try:a=input("请输入被除数:")b=input("请输入除数:")c=float(a)/float......