kotlin - Kotlin 可选的泛型参数
问题描述
这是我要解决的问题,我正在尝试将 void 类型用作泛型类型:
class Parent {
private abstract class Item<out T>(val data: T)
// This subclass should contain data
private class ItemContent(val data: String): Item<String>(data)
// This subclass doesn't contain data
private class ItemNoContent: Item<Any?>(null)
}
一些像 ItemNoContent 这样的基类不包含有意义的数据,所以我让 ItemNoContent 扩展了 Item(null)。它有效,但我觉得使用 Any? null 在这里是不合适的。有没有更多的 Kotlin 方法来解决这个可选的通用问题?
解决方案
您还可以使用Item<Unit>(Unit)
which 表示void
Kotlin 中的值。
推荐阅读
- java - 如何在读取csv文件时停止flink读取重复数据
- flutter - 从控制台读取俄语文本 [dart]
- svelte - 如何将 Google Adsense 添加到 Svelte/Sapper 网络应用程序?
- node.js - 需要更改 web-push 通知中写的“localhost:3000”
- django - 使用 Django Rest Framework (DRF) 进行 base64 映像
- ios - 无法启动“app_name”未能获取进程 -1 的任务
- c - Linux下文件锁的一些问题
- php - laravel 8中的iyzico付款方式失败
- typescript - Vue 3 Typescript Build '这是未定义的'
- python - 代码停止执行 Ban discord bot, python