Im kind of confused on a few things in ruby...

"Hello".length(4)
returns l
because H is 1, e is 2, l is 3, and another l is 4
but
my_Array = [1, 2, 3, 4, 5]
my_Array[2]
returns a 3 cause arrays are 0 indexed.
my_Array.count
returns 5

when I use String.length, why does the index not start at 0, but it does with arrays?
Is that even right?