Если я вас правильно понял, вы спрашиваете, почему n.times
является единственным методом, который повторяется до, но не включает n
. В этом случае:
Для диапазонов это просто: x..y
определяет диапазон от x до y включительно, а x...y
определяет диапазон от x до y эксклюзивно. Поэтому, если вы хотите использовать то же поведение, что и времена, используйте 0...n
.
Для x.upto(y)
есть только одна версия, которая будет повторяться до + включая y
. Это просто, как все это определено и задокументировано для работы.
Также совершенно ясно, почему n.times
не включает n: если бы он повторялся от 0 до n (включительно), он бы выдал n+1
раз. Но так как метод называется n.times
, он явно должен давать только n раз.