gpt4 book ai didi

java - 如果我在 if 语句中检查方法是否返回 true,是否会执行方法中的实际代码?

转载 作者:行者123 更新时间:2023-11-30 07:11:27 24 4
gpt4 key购买 nike

好吧.. 我有一个方法,基本上检查玩家是否可以购买 field ,如果他可以,然后将他设置为所有者并返回 true。我指的方法是 if 语句中的 buyFieldFromBank。

但我想检查我的方法是否返回 true,如果返回 true,则询问用户是否要购买。我真的可以这样做吗?或者代码是否已经在 if 语句中将他设置为所有者?或者它只是“检查”它是否为真,而不实际执行代码?

if(landRegistry.buyFieldFromBank(currentPlayer, newPosID)==true){
if(GUI.getUserButtonPressed(currentPlayer.getName() + ", vil du købe " + newPosition.getFieldName() + "Ja", "Nej")=="Ja"){
landRegistry.buyFieldFromBank(currentPlayer, newPosID);

最佳答案

几个明显的问题:

1) 您正在使用 == 而不是 .equals 来比较 2nd if 中的字符串,请在此处讨论有关该问题的辩论:Link

2) 通过调用 landRegistry.buyFieldFromBank 您正在执行该方法,因此它已经完成。您需要像 landRegistry.isUserEligible(currentPlayer,newPosId) 这样的方法来检查第一个 if 语句。然后,如果它通过了第一个和第二个条件,它应该调用 buyFieldFromBank 方法。同样值得考虑的是第二个 if 是否应该属于 isUserEligible 方法调用;如果它是确定资格的逻辑的一部分,它可能最适合那里。

3) 如果您调用的方法返回 boolean 值,则第一个 if 的 == true 部分是多余的。因此,您可以删除该部分,只调用方法本身。

关于java - 如果我在 if 语句中检查方法是否返回 true,是否会执行方法中的实际代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21195657/

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