【问题标题】:Java : check for null in setter using ternary [closed]Java:使用三元检查setter中的null [关闭]
【发布时间】:2021-03-25 02:33:13
【问题描述】:

学习 Java 并参与汽车经销商项目。

尝试使用三元运算符检查我的 setter 函数中的汽车制造输入,eclipse 不喜欢我输入的内容:

我有点困惑,因为我想表达以下内容: if Make 为 null => 设置为 Empty {if not} 设置为输入

    public void setMake(String Make) {
        this.Make == null ? "" : this.Make;
    }

提前感谢您的帮助。

【问题讨论】:

  • 您从未分配过值。使用this.Make = Make == null ? "" : Make;
  • 离题但变量和参数名称应以小写字母开头

标签: java conditional-statements conditional-operator


【解决方案1】:

应该是:

public void setMake(String Make) {
    this.Make = Make == null ? "" : Make;
}

您想将三元条件运算符的结果分配给您的实例变量。

当你想引用传递给方法的Make时,你应该写Make,而不是this.Make(这是实例变量)。

【讨论】:

  • 非常感谢,看来我必须更多地研究它的实际工作原理,
  • 但是现在它正在工作,发生了一些奇怪的事情,程序拒绝继续,除非我输入一个值并且没有设置 -Empty ""- 。有什么建议吗?
  • @Majd 如果不查看您的更多代码,我无法就此提供建议。
猜你喜欢
  • 1970-01-01
  • 2012-11-21
  • 1970-01-01
  • 2014-07-28
  • 1970-01-01
  • 2016-09-23
  • 2019-08-07
  • 2018-08-24
  • 1970-01-01
相关资源
最近更新 更多