Kotlin练习
Kotlin的全部练习都来自可随时对照的主题。
66项练习 离线运行
kt 测验 新题 如何区分键不存在与键存在但值为null? 掌握List、Set、Map、只读与可变接口、集合操作链和Sequence惰性求值,并避开别名、键覆盖与无限序列陷阱。 kt 预测输出 新题 终结操作执行时会产生哪组输出? 掌握List、Set、Map、只读与可变接口、集合操作链和Sequence惰性求值,并避开别名、键覆盖与无限序列陷阱。 kt 预测输出 新题 这段程序会输出什么? 掌握List、Set、Map、只读与可变接口、集合操作链和Sequence惰性求值,并避开别名、键覆盖与无限序列陷阱。 kt 审查AI代码 新题 审查生成的启用商品索引 掌握List、Set、Map、只读与可变接口、集合操作链和Sequence惰性求值,并避开别名、键覆盖与无限序列陷阱。 kt 测验 新题 哪个操作会触发求值并返回非Sequence结果? 掌握List、Set、Map、只读与可变接口、集合操作链和Sequence惰性求值,并避开别名、键覆盖与无限序列陷阱。 kt 找出bug 新题 找出SKU索引里的bug 掌握List、Set、Map、只读与可变接口、集合操作链和Sequence惰性求值,并避开别名、键覆盖与无限序列陷阱。 kt 测验 新题 两个Packet实例分别持有byteArrayOf(1, 2)。对于data class Packet(val bytes: ByteArray),packetA == pack… 用数据类定义值语义,理解编译器生成的相等性、解构与浅拷贝,并避开可变键、数组和敏感字段陷阱。 kt 测验 新题 copy() 创建数据类实例时,已经初始化过的类体属性会怎样? 用数据类定义值语义,理解编译器生成的相等性、解构与浅拷贝,并避开可变键、数组和敏感字段陷阱。 kt 测验 新题 默认情况下,哪些属性会参与数据类生成的全部成员? 用数据类定义值语义,理解编译器生成的相等性、解构与浅拷贝,并避开可变键、数组和敏感字段陷阱。 kt 预测输出 新题 这段程序会输出什么? 用数据类定义值语义,理解编译器生成的相等性、解构与浅拷贝,并避开可变键、数组和敏感字段陷阱。 kt 审查AI代码 新题 审查生成的购物车快照 用数据类定义值语义,理解编译器生成的相等性、解构与浅拷贝,并避开可变键、数组和敏感字段陷阱。 kt 找出bug 新题 找出可变数据类键里的bug 用数据类定义值语义,理解编译器生成的相等性、解构与浅拷贝,并避开可变键、数组和敏感字段陷阱。 kt 测验 新题 当values的类型为Map<String, Any?>时,val age: Int by values能保证什么? Kotlin委托属性把getter和setter交给可复用对象;掌握lazy、observable、自定义委托以及共享状态和线程安全陷阱。 kt 预测输出 新题 这段程序会输出什么? Kotlin委托属性把getter和setter交给可复用对象;掌握lazy、observable、自定义委托以及共享状态和线程安全陷阱。 kt 预测输出 新题 拒绝赋值后,这段程序会输出什么? Kotlin委托属性把getter和setter交给可复用对象;掌握lazy、observable、自定义委托以及共享状态和线程安全陷阱。 kt 测验 新题 成员委托属性的provideDelegate() 在什么时候调用? Kotlin委托属性把getter和setter交给可复用对象;掌握lazy、observable、自定义委托以及共享状态和线程安全陷阱。 kt 审查AI代码 新题 审查生成的账户字段委托 Kotlin委托属性把getter和setter交给可复用对象;掌握lazy、observable、自定义委托以及共享状态和线程安全陷阱。 kt 找出bug 新题 找出单例委托里的bug Kotlin委托属性把getter和setter交给可复用对象;掌握lazy、observable、自定义委托以及共享状态和线程安全陷阱。 kt 测验 新题 两个嵌套接收者类型带有同一个DSL标记。内层块怎样有意访问外层接收者? 用带接收者的lambda、类型安全构建器与DSL标记设计边界清楚、可验证的Kotlin内部领域语言。 kt 预测输出 新题 这个基于接收者的构建器会输出什么? 用带接收者的lambda、类型安全构建器与DSL标记设计边界清楚、可验证的Kotlin内部领域语言。 kt 审查AI代码 新题 审查生成的数据库DSL 用带接收者的lambda、类型安全构建器与DSL标记设计边界清楚、可验证的Kotlin内部领域语言。 kt 找出bug 新题 找出菜单快照里的bug 用带接收者的lambda、类型安全构建器与DSL标记设计边界清楚、可验证的Kotlin内部领域语言。 kt 测验 新题 只有最后阶段能产生结果时,分阶段构建器保证了什么? 用带接收者的lambda、类型安全构建器与DSL标记设计边界清楚、可验证的Kotlin内部领域语言。 kt 测验 新题 某个SQL DSL接收String并把它插入查询。Kotlin类型检查证明了什么? 用带接收者的lambda、类型安全构建器与DSL标记设计边界清楚、可验证的Kotlin内部领域语言。 kt 测验 新题 类型与导入的扩展都定义了兼容签名的render()。value.render() 会选择哪个声明? 用接收者语法为现有类型补充函数与计算属性,并理解静态解析、成员优先、可空接收者和作用域边界。 kt 预测输出 新题 直接调用与安全调用的结果有什么不同? 用接收者语法为现有类型补充函数与计算属性,并理解静态解析、成员优先、可空接收者和作用域边界。 kt 预测输出 新题 这段程序会输出什么? 用接收者语法为现有类型补充函数与计算属性,并理解静态解析、成员优先、可空接收者和作用域边界。 kt 审查AI代码 新题 审查生成的账户标签扩展 用接收者语法为现有类型补充函数与计算属性,并理解静态解析、成员优先、可空接收者和作用域边界。 kt 找出bug 新题 找出扩展属性里的bug 用接收者语法为现有类型补充函数与计算属性,并理解静态解析、成员优先、可空接收者和作用域边界。 kt 测验 新题 已经列出枚举所有成员的when表达式,为什么应省略else? 从只读引用、静态类型与空安全出发,掌握Kotlin的表达式、控制流和函数调用边界。 kt 测验 新题 count的类型是Int。哪个表达式能把它传给fun store(value: Long)? 从只读引用、静态类型与空安全出发,掌握Kotlin的表达式、控制流和函数调用边界。 kt 预测输出 新题 这段程序会输出什么? 从只读引用、静态类型与空安全出发,掌握Kotlin的表达式、控制流和函数调用边界。 kt 审查AI代码 新题 审查生成的发票合计 从只读引用、静态类型与空安全出发,掌握Kotlin的表达式、控制流和函数调用边界。 kt 找出bug 新题 找出名称长度函数里的bug 从只读引用、静态类型与空安全出发,掌握Kotlin的表达式、控制流和函数调用边界。 kt 测验 新题 对于 @JvmInline value class UserId(val value: Long),哪个使用位置通常需要装箱表示? 使用`@JvmInline value class`建模单值领域类型,理解JVM表示、装箱边界、构造校验与Java互操作。 kt 测验 新题 要发布一个可从Java调用、而Kotlin API接受内联值类的函数,哪种做法可靠? 使用`@JvmInline value class`建模单值领域类型,理解JVM表示、装箱边界、构造校验与Java互操作。 kt 预测输出 新题 这段程序会输出什么? 使用`@JvmInline value class`建模单值领域类型,理解JVM表示、装箱边界、构造校验与Java互操作。 kt 审查AI代码 新题 审查生成的API令牌包装器 使用`@JvmInline value class`建模单值领域类型,理解JVM表示、装箱边界、构造校验与Java互操作。 kt 找出bug 新题 找出值类映射键里的bug 使用`@JvmInline value class`建模单值领域类型,理解JVM表示、装箱边界、构造校验与Java互操作。 kt 测验 新题 哪个类型表示“可缺省的函数,它接收String并返回Int”? Lambda表达式把行为表示为有静态类型的值;这里讲清函数类型、捕获、接收者、返回控制与JVM边界。 kt 预测输出 新题 这个程序会输出什么? Lambda表达式把行为表示为有静态类型的值;这里讲清函数类型、捕获、接收者、返回控制与JVM边界。 kt 预测输出 新题 传入尾随lambda后会输出哪些行? Lambda表达式把行为表示为有静态类型的值;这里讲清函数类型、捕获、接收者、返回控制与JVM边界。 kt 审查AI代码 新题 审查生成的事件注册表 Lambda表达式把行为表示为有静态类型的值;这里讲清函数类型、捕获、接收者、返回控制与JVM边界。 kt 找出bug 新题 找出回调索引捕获里的bug Lambda表达式把行为表示为有静态类型的值;这里讲清函数类型、捕获、接收者、返回控制与JVM边界。 kt 测验 新题 哪个类型同时允许列表本身和其中的每个元素为null? 用可空类型、智能转换、安全调用与Elvis运算符表达缺失值,并在Java互操作和生成代码边界避免运行时空指针异常。 kt 测验 新题 未注解的Java方法返回平台String类型。实现不可信时,哪项第一步能如实表达Kotlin边界? 用可空类型、智能转换、安全调用与Elvis运算符表达缺失值,并在Java互操作和生成代码边界避免运行时空指针异常。 kt 预测输出 新题 这段程序会输出什么? 用可空类型、智能转换、安全调用与Elvis运算符表达缺失值,并在Java互操作和生成代码边界避免运行时空指针异常。 kt 审查AI代码 新题 审查生成的客户导入器 用可空类型、智能转换、安全调用与Elvis运算符表达缺失值,并在Java互操作和生成代码边界避免运行时空指针异常。 kt 找出bug 新题 找出主机名读取里的bug 用可空类型、智能转换、安全调用与Elvis运算符表达缺失值,并在Java互操作和生成代码边界避免运行时空指针异常。 kt 测验 新题 一组解析器需要构造时持有的共享缓存,以及固定的解析模板。哪个起点最符合该契约? 用类、接口、继承与组合建立清晰的对象边界,理解Kotlin的默认final、运行时多态、构造顺序和可见性规则。 kt 测验 新题 BillingService需要通过可替换目标发送审计记录。哪种关系能保持最小边界? 用类、接口、继承与组合建立清晰的对象边界,理解Kotlin的默认final、运行时多态、构造顺序和可见性规则。 kt 测验 新题 哪个声明允许子类覆盖calculate()? 用类、接口、继承与组合建立清晰的对象边界,理解Kotlin的默认final、运行时多态、构造顺序和可见性规则。 kt 预测输出 新题 这段程序会输出什么? 用类、接口、继承与组合建立清晰的对象边界,理解Kotlin的默认final、运行时多态、构造顺序和可见性规则。 kt 审查AI代码 新题 审查生成的通知服务 用类、接口、继承与组合建立清晰的对象边界,理解Kotlin的默认final、运行时多态、构造顺序和可见性规则。 kt 找出bug 新题 找出账户余额里的bug 用类、接口、继承与组合建立清晰的对象边界,理解Kotlin的默认final、运行时多态、构造顺序和可见性规则。 kt 测验 新题 对于String? 类型的value,关于value.let与value?.let的哪项说法正确? 用接收者与返回值两个维度选择Kotlin的let、run、with、apply和also,并避开空值、嵌套接收者与链式返回陷阱。 kt 预测输出 新题 接收者存在但let块返回null时,lookup("known") 会输出什么? 用接收者与返回值两个维度选择Kotlin的let、run、with、apply和also,并避开空值、嵌套接收者与链式返回陷阱。 kt 预测输出 新题 这个程序会输出什么? 用接收者与返回值两个维度选择Kotlin的let、run、with、apply和also,并避开空值、嵌套接收者与链式返回陷阱。 kt 审查AI代码 新题 审查生成的注册表 用接收者与返回值两个维度选择Kotlin的let、run、with、apply和also,并避开空值、嵌套接收者与链式返回陷阱。 kt 找出bug 新题 找出嵌套it接收者里的bug 用接收者与返回值两个维度选择Kotlin的let、run、with、apply和also,并避开空值、嵌套接收者与链式返回陷阱。 kt 测验 新题 一个实现既是已知的Failure变体,又是已知的Retryable变体,最适合用哪种声明建模? 用受限继承层级表达有限状态,借助穷尽when在新增分支时获得编译器反馈,并分清密封类、密封接口与枚举的边界。 kt 测验 新题 在Kotlin 2.4.10中,密封类的直接子类可以声明在哪里? 用受限继承层级表达有限状态,借助穷尽when在新增分支时获得编译器反馈,并分清密封类、密封接口与枚举的边界。 kt 预测输出 新题 这段程序会输出什么? 用受限继承层级表达有限状态,借助穷尽when在新增分支时获得编译器反馈,并分清密封类、密封接口与枚举的边界。 kt 预测输出 新题 这段程序会输出什么? 用受限继承层级表达有限状态,借助穷尽when在新增分支时获得编译器反馈,并分清密封类、密封接口与枚举的边界。 kt 审查AI代码 新题 审查生成的支付状态层级 用受限继承层级表达有限状态,借助穷尽when在新增分支时获得编译器反馈,并分清密封类、密封接口与枚举的边界。 kt 找出bug 新题 找出配送状态标签里的bug 用受限继承层级表达有限状态,借助穷尽when在新增分支时获得编译器反馈,并分清密封类、密封接口与枚举的边界。
没有符合筛选条件的练习。