gpt4 book ai didi

java - 在 if 中返回值的优雅方式

转载 作者:行者123 更新时间:2023-12-02 03:18:17 24 4
gpt4 key购买 nike

假设您想要编写一个简单的方法,该方法采用名为“foo”的字符串参数。如果 foo 等于“toto”,则该方法应返回 int“1”,在其他情况下,该方法应返回“2”。在不使用三元表达式的情况下编写此方法的最佳方法是什么?

我有几种解决方案,但无法自行决定哪一个是 Java 中最好的。

解决方案1:

public int method1(String foo){
if("toto".equals(foo)){
return 1;
}
return 2;
}

解决方案 2:

public int method2(String foo){
if("toto".equals(foo)){
return 1;
} else {
return 2;
}
}

解决方案 3:

public int method3(String foo){
int result = 2;
if("toto".equals(foo)){
result = 1;
}
return result;
}

解决方案 4:

public int method4(String foo){
int result = 0;
if("toto".equals(foo)){
result = 1;
} else {
result = 2;
}
return result;
}

还有其他想法吗?

请记住,我搜索的是没有三元条件的解决方案。

谢谢

编辑:我知道以前的所有方法都给出了预期的结果,所以它们都可以使用。我想知道但在我最初的问题中不清楚的是:Java 社区是否有关于这种情况的某种标准?例如,我知道括号的位置有一个标准:你可以将它们放在 if 语句后面的一行,但大多数人在 Java 中不会这样做。

我知道三元表达式可能是最好的。但是,正如您可以想象的那样,我的“真实”方法比这更复杂并且不能使用三元。我在这里提出的问题只是一个简化,而不是完整的、真正的问题。

最佳答案

我认为,最好的就是最具可读性的

 public int method(String foo){
return "toto".equals(foo)?1:2;
}

关于java - 在 if 中返回值的优雅方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39998655/

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