作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我有 2 个 boolean
变量,例如:
boolean isWhite;
boolean isTall;
所以我想确定 4 种可能情况的不同行为 ({(isWhite, isTall), (!isWhite, isTall), (isWhite, !isTall), (!isWhite, !isTall)}
)。
1) 是否有比每次都使用 if/else
更优雅、更实用的方法?
if(isWhite) {
if(isTall) {
// Case 1
}
else {
// Case 2
}
else {
if(isTall) {
// Case 3
}
else {
// Case 4
}
2) 做这样的事情会有什么不同吗?
if (isWhite && isTall)
// Case 1
if (isWhite && !isTall)
// Case 2
if (!isWhite && isTall)
// Case 3
if (!isWhite && !isTall)
// Case 4
最佳答案
您的第二个解决方案更具可读性。但是您应该使用 if-else 而不仅仅是 if 语句。考虑第一种情况是否已经成立。其他 3 个 if 语句仍然会被计算。如果您使用 if-else 语句并且第一种情况为真,则将跳过其他 3 个语句。
if (isWhite && isTall) {//case1}
else if (isWhite && !isTall) {//case2}
else if (!isWhite && isTall) {//case3}
else {//case4}
关于java - 如何用 2 个 boolean 值确定不同的行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41531672/
我是一名优秀的程序员,十分优秀!