我正在使用 Java lombok 注释 @Getter
为我的 POJO 生成吸气剂。我有一个名为 isAbc
的 boolean
字段。
@Getter
注释在这种情况下生成一个名为 isAbc()
的方法。它不应该生成一个名为 isIsAbc()
的方法吗?
原文由 Nitesh Kumar 发布,翻译遵循 CC BY-SA 4.0 许可协议
我正在使用 Java lombok 注释 @Getter
为我的 POJO 生成吸气剂。我有一个名为 isAbc
的 boolean
字段。
@Getter
注释在这种情况下生成一个名为 isAbc()
的方法。它不应该生成一个名为 isIsAbc()
的方法吗?
原文由 Nitesh Kumar 发布,翻译遵循 CC BY-SA 4.0 许可协议
Lombok 不以 is
作为前缀,如果名称已经以 is
开头,后跟一个大写字母,如 isGood
。
您可能会遇到像 canDelete
这样的名称,它将生成一个名为 isCanDelete
的 getter。为避免这种情况,您可以使用 fluent
参数:
@Getter(fluent = true)
private boolean canDelete;
或(取决于版本):
@Getter
@Accessors(fluent = true)
private boolean canDelete;
在这种情况下,它将保留名称原样,因此吸气剂变为 canDelete()
。
原文由 Kent Munthe Caspersen 发布,翻译遵循 CC BY-SA 4.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答6k 阅读
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
阅读 lombok 页面上的“细则”部分 https://projectlombok.org/features/GetterSetter.html
因此,您遇到的行为是指定的。
请注意,
boolean
和Boolean
的行为不同: