java - 如果在 if 语句中 Java
问题描述
我在 if 语句中插入 if 语句时遇到了一些麻烦。当满足第一个“if 条件”时,它仍然使用“else”语句。有没有办法可以重写我的代码,以便不使用“else”语句。我认为如果满足第一个“if 条件”,那么它不会检查 else 语句。我知道我可以使用 switch 语句,但我想比较和对比 switch 和 if 语句的用法,以更好地理解 Java。下面是我的代码。谢谢
int age = 0;
if (age == 0)
{
{System.out.println("You can crawl");}
if (age == 1) {
System.out.println("You can talk");
} else {
System.out.println("You can walk");
}
}
控制台:你可以爬行你可以走路
解决方案
当前可能发生的是age == 0
条件触发为真,但是由于您构建代码的方式,else
条件也触发,作为完全独立的if
条件检查的谓词age == 1
。if ... else if ... else
解决方案很简单,通过逻辑连接一切:
if (age == 0) {
System.out.println("You can crawl");
}
else if (age == 1) {
System.out.println("You can talk");
}
else {
System.out.println("You can walk");
}
推荐阅读
- react-three-fiber - 我在飞机上使用 SplineCurve 用 react-three-fiber 制作的这条步行路径有什么问题?
- java - 间歇性 java.net.SocketException:连接重置
- angular - Angular:以编程方式设置复杂 CSS 选择器的样式
- python - Pylance 无法识别来自 tensorflow 的类型
- homebrew - 这是什么意思?一些已安装的小桶没有配方
- javascript - val('') 清除字段但值仍然存在
- ruby-on-rails - 为什么 Ruby on Rails Azure Web App 教程无法部署到远程?
- java - 为什么 Files.createSymbolicLink() 会为链接参数抛出 java.nio.file.NoSuchFileException?
- javascript - axios请求中将多个文件作为对象提交
- reactjs - 单元测试使用反应测试库来测试组件