Можно создать дубликат:
Array slicing in Ruby: looking for explanation for illogical behaviour (taken from Rubykoans.com)Рубин массив Indicies
Выполнение этого кода на моем рубинового интерпретатором он заканчивает с 7..4 выводя ноль, и 6..4 не выводит ничего
arr = [1, 2, 3, 4, 5, 6]
p arr[7..4]
p arr[6..4]
Согласно документу ruby, если начальный индекс находится за пределами допустимого диапазона, он возвращает нуль, и в этом случае se both (6 & 7) находятся вне диапазона массива, но только первый возвращает нуль.
Edit для clairification: Выход следующим образом:
nil
[]
Почему бы первое возвращение ноль, а второй []?
Это не дубликат. В этом вопросе мы имеем '..' вместо', 'и обратные границы. – Nakilon
@Nakilon: Нет никакой разницы, важно то, что первый индекс. @Paul: вы должны изменить 'puts' на' p', чтобы избежать путаницы в том, что является результатом нарезки, и что является результатом 'puts'. –
ОК, я перечитал, действительно, дублирую. – Nakilon