1

time我有一个包含浮点值的数组( )。我想减去这个数组的元素并将结果存储在另一个数组中并进一步打印它。我尝试了以下方法:

time=Array.new

time=open("/home/sakshi/Desktop/test/PACKET-WISE_DETAILS/pkt_time.tsv", &:read)

time.each do |i|
  puts time[i+1]-time[i]
end

但我收到此错误:

'in `+': can't convert Fixnum into String (TypeError) ' error. 

我也尝试用while循环重写上面的代码,但这也不起作用。

4

1 回答 1

1

这是因为您正在向对象(即 id)添加整数值,试试这个

time = Array.new

time = open("/home/sakshi/Desktop/test/PACKET-WISE_DETAILS/pkt_time.tsv", &:read)

time.each_with_index do |i,index|

 puts time[index+1]-time[index] if index < time.size #to avoid overflow when reaches the end

end
于 2013-03-01T12:42:20.853 回答