Java 中的对象声明检查

发布于 2025-01-10 18:02:23 字数 180 浏览 0 评论 0原文

我的代码片段:

if (answer) {
 TourRequest tour = new TourRequest();
}

在上述语句之后,我想声明游览对象,如果尚未在大括号内声明它,则使用不同的构造函数。

如何在不使用答案变量的内容的情况下直接检查游览是否存在?

My code snippet:

if (answer) {
 TourRequest tour = new TourRequest();
}

After the above statement, I want to declare tour object, using a different constructor if it hasn't already been declared inside the curly brackets.

How can I check directly if tour exist, without using the content of the answer variable?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

风筝有风,海豚有海 2025-01-17 18:02:23

在 if 语句之外声明变量,然后检查它是否为 null。

TourRequest tour = null;
if(answer) {
  tour = new TourRequest();
}

if(tour == null) {
  tour = new TourRequest(/*params...*/);
}

更好的是,只需使用 else 即可。

TourRequest tour;
if(answer) {
  tour = new TourRequest();
}
else {
  tour = new TourRequest(/*params...*/);
}

Declare the variable outside of the if statement and then check if it is null.

TourRequest tour = null;
if(answer) {
  tour = new TourRequest();
}

if(tour == null) {
  tour = new TourRequest(/*params...*/);
}

Better yet, just use an else.

TourRequest tour;
if(answer) {
  tour = new TourRequest();
}
else {
  tour = new TourRequest(/*params...*/);
}
小霸王臭丫头 2025-01-17 18:02:23

简化的解决方案在这里

TourRequest tour = answer ? new TourRequest() : new TourRequest(parameter);

the simplified solution is here

TourRequest tour = answer ? new TourRequest() : new TourRequest(parameter);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文