【发布时间】:2016-04-14 04:07:30
【问题描述】:
我试图在命令行中创建目录。数组中的每个元素都是一个字符串变量。
arr = [chap1, chap1_page, chap2, chap2_page, chap3, chap3_page]
x = 0
until x == arr.length
if ((arr[x] != 0 ))
puts arr[x].ljust(line/2) + arr[x += 1].rjust(line/2)
end
x += 1
end
我想知道是否有人可以解释puts 声明的后半部分。我不确定为什么 arr[x+=1] 有效,但 arr[x+1] 无效。据我所知,它们是一样的,不是吗?
【问题讨论】:
-
旁注:这不是真正地道的 Ruby。你熟悉
Array#each吗?作为副作用,您不需要像这样使用计数器变量。有关主题的更多信息:您所说的“有效”和“不[有效]”是什么意思?如果x是 2,那么arr[x + 1]应该返回索引 3 处的元素。您看到了什么出乎意料的输出? -
我希望输出格式为左侧章节和右侧页面,然后在下一行重复。但是使用 x+1 我看到下一行显示 chap1_page ....chap2。