报告 set 工厂函数中重复的常量元素,map 工厂函数中重复的常量键。

set 工厂函数中的重复条目通常是无意的,可能表示存在错误或拼写错误。 在 set 工厂函数中,重复的元素会被忽略,因为集合只能包含唯一元素。 在 map 工厂函数中,具有相同键的条目会覆盖先前条目,并且仅保留与该键相关联的最后一个值。

该检查适用于以下 map 工厂函数:

检测到使用 to 运算符创建的条目的重复映射键。

该检查适用于以下 set 工厂函数:

该检查会报告其值可以求值为编译时常量的实参,包括常量字面量和 const val 引用。

示例:


val numbers = setOf(1, 1, 2)

1 出现多次。


val mapping = mapOf(
    1 to "first",
    1 to "second",
)

两个条目使用同一个键。

具有 const val 的示例:


const val ID = 42

val ids = setOf(ID, 42)

两个实参求值为同一个常量值。