Это doesn’t имеют какое-либо отношение к структурам (а не с C#, любым), а в Java, Вы могли бы получить проблемы с изменяемыми объектами, когда они, например, вводят карту хеша. Если Вы изменяете их после добавления их к карте, и оно изменяет хэш-код , злые вещи могли бы произойти.
Я не думаю, что есть, но ничто не мешает вам использовать отрицательные значения в advance
.
Time.now.advance(:days => - 1, :hours => -1)
Вы также можете попробовать использовать
Time.now.ago(3.days)
Time.now.ago(3.days+3.hours)
Вы можете использовать что-то вроде следующего примера
Time.now - 3.days