Kotlin 列表的结构和非结构之间的差异
如Kotlin文档中所述,特别是List::subList方法: 返回的列表由该列表支持,因此返回列表中的非结构性更改将反映在此列表中,反之亦然 基础列表中的结构更改使视图的行为未定义 我找不到对上述结构性和非结构性变化的任何进一步解释或确切定义。直觉是这样的:Kotlin 列表的结构和非结构之间的差异,kotlin,Kotlin,如Kotlin文档中所述,特别是List::subList方法: 返回的列表由该列表支持,因此返回列表中的非结构性更改将反映在此列表中,反之亦然 基础列表中的结构更改使视图的行为未定义 我找不到对上述结构性和非结构性变化的任何进一步解释或确切定义。直觉是这样的: 非结构性 更改列表的元素,而不是列表本身。例如,将列表第一个元素的值从1更改为2。另一个例子是将列表强制转换为其他类型 结构: 更改列表结构:删除或添加元素,更改元素顺序 我的问题主要是:我的假设正确吗?我们可以在这些“定义”中添加
非结构性 更改列表的元素,而不是列表本身。例如,将列表第一个元素的值从
1
更改为2
。另一个例子是将列表强制转换为其他类型
结构:
更改列表结构:删除或添加元素,更改元素顺序
我的问题主要是:我的假设正确吗?我们可以在这些“定义”中添加一些东西吗 返回的子列表中的结构更改如何,它们是否使基本列表视图未定义?最后,未定义是否意味着基本列表或子列表中的更改可以或不可以反映在相应的视图中
提前感谢您的讨论和您的见解 这是与相同的方法,其文档回答了您的问题(从技术上讲,Kotlin/JS和Kotlin/Native的行为可能会有所不同,但这将非常令人惊讶):