gpt4 book ai didi

java - if/else if 内部 getter/setter Java

转载 作者:行者123 更新时间:2023-12-02 04:15:25 24 4
gpt4 key购买 nike

我最近开始了我的软件工程教育,我们目前正在学习 Java 的基础知识...我们必须创建一个简单的基于文本的机场游戏,但我遇到了一些麻烦。

我已经尝试过google和SOF搜索功能,但发现了很多“解决方案”;似乎没有一个能解决我的问题。所以请原谅我的“菜鸟”疑问:P

在游戏中,我们有几个机场,每轮都会生成随机数量的乘客,最少 100 人,最多 999 人。为此,我使用了以下代码...该代码有效且不会给我任何错误但我仍然得到低于 100 的随机结果。我做错了什么?就像我说的,我尝试了很多不同的方法,但它似乎忽略了我的 if/if else 条件...

int paxGenerator;

public int getPaxGenerator() {
return this.paxGenerator = (int) (Math.random() * 1000);

}

public void setPaxGenerator(int paxGenerator) {

if (paxGenerator<100) {
this.paxGenerator = 100;
} else if (paxGenerator > 999) {
this.paxGenerator = 999;
}

}

编辑:

return this.paxGenerator = (int) (Math.random() * 900) + 100; 确实解决了我的问题,thx @user43219 但是,为了学习;有人可以给我一个例子,说明我应该如何正确实现 if else 语句吗?因为我想创建 12 个新对象,所以它们都必须生成不同的随机数。如果我将随机代码放在 getter/setter 之外,它每次都会给我相同的数字...并且 if else 语句甚至不允许在 getter/setter 之外...请记住,我是一个初学者,所以事情对我来说并不那么明显:P 提前谢谢!

最佳答案

您没有调用您的二传手。该行:

return this.paxGenerator = (int) (Math.random() * 1000);

是否隐式调用setPaxGenerator() - 它绕过setter并直接设置属性值。

关于java - if/else if 内部 getter/setter Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33371320/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com