String
lengthA string
has a certain number of characters—this is its length. In Ruby we access the length property. We can use length in a for
-loop or while
-loop to access chars.
For most Ruby programs, using an iterator (like each_char
) to access elements (like chars in a string
) is best. But the length property, and a for
-loop, can be used as well.
Let us review the length property. With the string
"ABC" it returns the value 3—the string
has 3 characters in it.
for
-loop over the string
to iterate over the chars in forward order. We access each char
by its index.while
-loop to iterate over the string
in a reverse (backwards) order. We begin at length minus one.# An input string.
value = "ABC"
# Display the string.
puts "VALUE:" << value
puts "LENGTH:" << String(value.length)
# Loop over characters in the string forwards.
for i in 0..value.length - 1
puts "CHAR FORWARD:" << value[i]
end
# Loop over characters backwards.
temp = value.length - 1
while temp >= 0
puts "CHAR BACKWARD:" <> value[temp]
temp -= 1
endVALUE:ABC
LENGTH:3
CHAR FORWARD:A
CHAR FORWARD:B
CHAR FORWARD:C
CHAR BACKWARD:C
CHAR BACKWARD:B
CHAR BACKWARD:A
String
length is important in Ruby. This high-level language hides a lot of the complexity of things. With iterators (like each_char
) we hide complexity when looping over chars.
For the greatest level of control, though, for
-loops (and similar loops) are sometimes needed. We can access adjacent chars, or modify the index as we go along.