有人解释过它是怎么工作的吗?请解释一下X和Y。答覆: 81及23
fun main(args: Array<String>) {
var x =0
var y =20
for (outer in 1..3) {
for (inner in 4 downTo 2) {
x += 6
y++
x += 3
}
y -= 2
}
println("$x $y")
}
发布于 2022-07-04 18:33:22
您可以使用插入的print语句来执行这些步骤。对于x,如下所示:
var x = 0
for (outer in 1..3) {
for (inner in 4 downTo 2) {
x += (6 + 3)
println("outer: $outer | inner: $inner | x: $x")
}
println()
}
println("x: $x")
Output:
outer: 1 | inner: 4 | x: 9
outer: 1 | inner: 3 | x: 18
outer: 1 | inner: 2 | x: 27
outer: 2 | inner: 4 | x: 36
outer: 2 | inner: 3 | x: 45
outer: 2 | inner: 2 | x: 54
outer: 3 | inner: 4 | x: 63
outer: 3 | inner: 3 | x: 72
outer: 3 | inner: 2 | x: 81
x: 81
Y也一样:
var y = 20
for (outer in 1..3) {
for (inner in 4 downTo 2) {
y++
println("outer: $outer | inner: $inner | y: $y")
}
y -= 2
println("outer: $outer | y: $y")
println()
}
println("y: $y")
输出:
outer: 1 | inner: 4 | y: 21
outer: 1 | inner: 3 | y: 22
outer: 1 | inner: 2 | y: 23
outer: 1 | y: 21
outer: 2 | inner: 4 | y: 22
outer: 2 | inner: 3 | y: 23
outer: 2 | inner: 2 | y: 24
outer: 2 | y: 22
outer: 3 | inner: 4 | y: 23
outer: 3 | inner: 3 | y: 24
outer: 3 | inner: 2 | y: 25
outer: 3 | y: 23
y: 23
发布于 2022-07-04 18:30:24
开始变量x=0,y= 20。外部循环运行3次,内环运行3次。因此,内环中的函数被调用9次,外循环中的函数(y-=2)运行3次。
X=0+ (9 * (6 + 3)) = 81
Y= 20 +9+ (3 * -2) = 23
https://stackoverflow.com/questions/72860712
复制相似问题