Collections &引用;“零安全”;集合语言

Collections &引用;“零安全”;集合语言,collections,syntax,type-safety,Collections,Syntax,Type Safety,免责声明:如果您有更好的标题或标签,请编辑此问题 有些语言在编译时提供空安全性。如果在初始化变量之前读取该变量,编译器将抛出语法错误 是否有一种语言可以确保在编译时,在集合中访问某个值之前,集合将包含该值(由整数索引或任意id标识) 有没有一种正式的语言来处理这个问题 示例1 val list=ArrayList() val obj:String=list.get(0)//-->语法错误(此时x为空) 示例2 val-map=HashMap() 地图放置(“键1”,“测试”) val ob

免责声明:如果您有更好的标题或标签,请编辑此问题

有些语言在编译时提供空安全性。如果在初始化变量之前读取该变量,编译器将抛出语法错误

  • 是否有一种语言可以确保在编译时,在集合中访问某个值之前,集合将包含该值(由整数索引或任意id标识)

  • 有没有一种正式的语言来处理这个问题

示例1

val list=ArrayList()
val obj:String=list.get(0)//-->语法错误(此时x为空)
示例2

val-map=HashMap()
地图放置(“键1”,“测试”)
val obj:String=map.get(“key2”)/>语法错误(key2不在映射中)

您是否要求“第五个元素的值为8的所有集合的类型”?如果是这样,那么,正如Ryan提到的,检查依赖类型。如果你需要更多,你能澄清这个问题吗?我不完全确定我在寻找什么。我已经添加了两个示例。您是否要求“第五个元素的值为8的所有集合的类型”?如果是这样,那么,正如Ryan提到的,检查依赖类型。如果你需要更多,你能澄清这个问题吗?我不完全确定我在寻找什么。我增加了两个例子。