【发布时间】:2015-04-30 18:15:58
【问题描述】:
我正在使用 ruby 的内置函数。我想知道如何动态分配值并将其打印在一个块中。
让我给你看我的例子。
irb(main):001:0> i = 0
=> 0
irb(main):002:0> a = "a"
=> "a"
irb(main):003:0> while i<10
irb(main):004:1> x,a = a, a.next
irb(main):005:1> print x, " "
irb(main):006:1> i+=1
irb(main):007:1> end
a b c d e f g h i j => nil
现在我想用x.times 方法得到相同的结果。 10.times {puts x,a=a, a.next} 引发错误。如何使用x.times 获得相同的结果?
我的 ruby 版本是 1.8.7
编辑:我尝试了更多并得到了这个。但是我们不能像我在while循环中那样使用赋值吗?除了打印“a”和空格外,一切似乎都很好。你能帮我打印出“a”和空格吗?
irb(main):011:0> x="a"
=> "a"
irb(main):012:0> 10.times {print x=x.next}
bcdefghijk=> 10
【问题讨论】:
-
你知道下个月v1.8.7 将迎来它的七岁生日吗?考虑升级。
-
我对升级有点保守。但也许是时候升级了。 p.s.我的机器是活的历史 - java 1.2,python 2.5 :)
-
你认为你的电脑很旧? Here's 我的。 (我升级太便宜了。)
-
对我来说,60 岁以上的计算机程序员是“过去的闪亮文物”。在我出生之前,他们一直在和电脑打交道,他们很迷人。在这种情况下,“de te fabula narratur”,先生 :)
-
这很有趣,“人工制品”是我的曾、曾、曾孙子们在提及我时使用的术语。
标签: ruby