当前位置: 首页 > 知识库问答 >
问题:

可选在龙目岛

姜乐家
2023-03-14

我有一个名为Address的类,如下所示:

@Value
class Address {

   @NotNull String userId;
   @NotNull String line1;
   String line2;

   private Address(Builder b) {
      // copy everything from builder
   }

   // override getter for line2 so that it returns Optional<String>
   public Optional<String> getLine2() {
      return Optional.ofNullable(this.line2);
   }

   // and a Builder
   public static class Builder {
     // builder methods
   }
}

在这里,我不得不编写生成器和Getter,因为如果我想在使用Lombok时返回一个Optional,我必须将第2行声明为Optional

是否有其他方法可以将lombok与选项一起使用?


共有1个答案

魏凡
2023-03-14
匿名用户

答案是否定的,而且可能永远不会。

您可能做错了:-)可选既不是空的替代品,也不是防止空点异常的奇特方法。这表明这个问题是无法回答的,比如:一张空名单上的人的平均年龄是多少。

可选s不应传递,而应尽快由调用代码解除绑定。

另请参见https://www.voxxed.com/blog/2015/01/embracing-void-6-refined-tricks-dealing-nulls-java/

因为这些场景只是少数,而Lombok喜欢让程序员编写更好的代码,所以我不期望Lombok会支持它。

披露:我是Lombok开发者。

 类似资料:
  • 问题内容: 我有一堂课,看起来像这样: 在这里,我不得不写a,因为如果我想在使用Lombok时返回Optional,则必须声明为。这将生成一个接受的生成器方法! 还有其他方法可以使用lombok 吗? 问题答案: 答案是否定的,可能永远也不会。 您可能做错了:-) 并不是预防的替代品,也不是预防的奇特方法。这表示该问题无法回答,例如:空人员列表的平均年龄是多少。 绝对不应传递,而应尽快由调用代码取

  • 我在gradle项目中使用lombok,希望创建一个jar文件,但每次我执行jar任务(无论是在控制台还是eclipse ide中触发)时,我都会发现错误,我的lombok导入在我使用lombok注释的类中找不到。输出示例: 搜索了一段时间后,我发现有一个适用于gradle和lombok的插件,但在使用较新的gradle版本编译时并不真正需要。我的gradle版本是3.4.1和lombok 1.6

  • 是否有可能为一种类型的字段修改Lombok的Getter?有一个可变的LiveData是LiveData的子级。我希望Lombok为返回LiveData而不是MutableLiveData的MutableLiveData字段创建getter。我希望你明白我的意思。 为了描述我所说的内容,我添加了一些代码: 这是关于Android中的MVVM模式和删除ViewModels中的样板代码。谢谢

  • 我在我的实体中使用了lombok注释“@Data”。我试图通过Dto Converter使用getter,就像我在没有lombok的情况下正常使用一样。不知何故,它没有像我预期的那样工作。看起来我的lombok没有创建getter,或者我没有访问权限? Dto转换器:

  • 我试着在IntelliJ上使用Lombok和Maven和VRaptor,但它不起作用。 我已经在stackoverflow中阅读了一些信息,但没有解决我的问题,我已经在Intellij中启用了注释处理器,但仍然一无所获。 我也试图从命令行(Windows)编译它,但没有成功。 我还尝试在没有maven的情况下创建另一个项目,添加库,创建一些用于测试的类,它可以完美地工作、编译和运行。 有什么帮助吗

  • 我在Intellij遇到了一个奇怪的问题。我正在使用Lombok(1.18.2)、IntelliJ(2018.2.2)和JUnit 5在gradle 4多模块项目中。 我花了好几个小时来复制这个。 > 运行所有具有覆盖率测试用例。 移除龙目镜并在此之后生成吸气剂和定型剂也没有效果。 尝试了一切来解决这个问题(启用注释处理器、Lombok插件、清理构建),但没有成功。 编辑1: Root build