java - 为什么这个块在执行过程中没有被执行?
问题描述
int n = 3;
int x = n;
int y = 0;
for(int i = n; i > 0; i--)
for(int j = 0; j <=n; j++)
if(j > n)
for(int k = 1; k <=n; k++)
System.out.println("x is " +x--);
else
System.out.print("y is " +y++);
在 if 语句下 if(j > n) 为什么不执行 for 循环?我真的不明白为什么,因为我们的导师让我们分析运行时间,我真的不明白为什么在执行期间没有执行 for 循环。请帮我..
解决方案
for(int j = 0; j <=n; j++)
if(j > n)
您在for
循环中所说的是:执行此代码 while j
is less or equal
to n
。
然后对if
你说:如果j
is greater
比n
。
j
永远不会大于 ,n
因为for
循环限制j
faueless or equal
为n
。
这是非常基本的,你应该阅读更多关于如何for
工作的内容。
另外,避免不使用{}
,这是非常危险的。更喜欢总是这样做:
for(int j = 0; j <=n; j++) {
if(j > n) {
....
}
}
推荐阅读
- android - Android Checkbox List 总是检查第一项
- java - 如何检查一个数字是否有小数位到千分位或更多?
- blockchain - 是否可以以 0 交易费用发行代币?
- java - 如何将日志写入 postgresql 数据库
- python - driver.page_source 未定义
- docker - 无法在容器之间工作的 Windows Server 2019 入口网络上获取 Docker Swarm
- karate - 有没有办法将有效负载内的 json 数组值用作可选字段?空手道 DSL
- ios13 - 从 iOS 13.6.1 升级到 iOS 14 时应用行为发生变化
- django - 在不复制模型/字段定义的情况下重命名 ModelSerializer 字段的 DRY 方法?
- javascript - javascript对象上的for循环