小编CHK*_*CHK的帖子

为什么带有字符串数组的ruby并行赋值返回字符串

我不确定下面的代码片段到底发生了什么.

>> a, b = ["ho", "hey"]
=> ["ho", "hey"]
>> a
=> "ho"
>> b
=> "hey"    
>> c, d = "foo", "bar"
=> ["foo", "bar"]
>> c 
=> "foo"
>> d
=> "bar"
>> a, b = ["blerg"], ["baz"]
=> [["blerg"], ["baz"]]
>> a
=> ["blerg"]
>> b 
=> ["baz"]
Run Code Online (Sandbox Code Playgroud)

为什么第1行不会返回a => ["ho"]

所以在幕后,什么是这三个任务之间的差异(a, b = ["ho", "hey"],c, d = "foo", "bar",a, b = ["blerg"], ["baz"])?

ruby

7
推荐指数
2
解决办法
6209
查看次数

32位红宝石1.9.2p290时间不能处理2038?

32位ruby 1.9.2p290(我必须使用),似乎很难在当前时间内添加25(但不是24!)年.

now = Time.now
more_time = (24*365*24*60*60)
puts "more_time.class = #{more_time.class}"
later = now + more_time

now = Time.now
more_time = (25*365*24*60*60)
puts "more_time.class = #{more_time.class}"
later = now + more_time
Run Code Online (Sandbox Code Playgroud)

生产:

more_time.class = Fixnum

more_time.class = Fixnum

ruby_time.rb:11:in'+':时间+ 788400000.000000超出ruby_time.rb的时间范围(RangeError):11

我遇到了2038年的问题吗?64位ruby 1.9.2-p290我没有这个问题.

ruby linux year2038

3
推荐指数
1
解决办法
204
查看次数

标签 统计

ruby ×2

linux ×1

year2038 ×1