В Ruby метод .find_indexиспользуется для возврата индекса первого элемента массива, соответствующего заданному условию. Вот несколько примеров использования метода .find_index:
Пример 1. Поиск индекса определенного элемента
arr = [10, 20, 30, 40, 50]
index = arr.find_index(30)
puts index
Выход:
2
Объяснение: В этом примере метод .find_indexиспользуется для поиска индекса элемента 30в массиве arr. Поскольку 30расположен по индексу 2, на выходе будет 2.
Пример 2. Поиск индекса первого элемента, удовлетворяющего условию
arr = [10, 20, 30, 40, 50]
index = arr.find_index { |element| element > 30 }
puts index
Выход:
3
Объяснение: В этом примере метод .find_indexиспользуется с блоком для поиска индекса первого элемента, который больше 30в массиве >прибытие. Поскольку 40— первый элемент, удовлетворяющий условию, на выходе будет 3.
Пример 3. Поиск индекса первого элемента, соответствующего регулярному выражению
arr = ['apple', 'banana', 'orange', 'grape']
index = arr.find_index(/an/)
puts index
Выход:
1
Объяснение: В этом примере метод .find_indexиспользуется для поиска индекса первого элемента в массиве arr, который соответствует регулярному выражению / ан/. Элемент 'banana'соответствует регулярному выражению и находится по индексу 1, поэтому на выходе будет 1.
Пример 4. Поиск индекса элемента в многомерном массиве
arr = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
index = arr.find_index([4, 5, 6])
puts index
Выход:
1
Объяснение: В этом примере метод .find_indexиспользуется для поиска индекса первого подмассива в многомерном массиве arr, который соответствует заданному подмассиву. массив [4, 5, 6]. Подмассив [4, 5, 6]расположен по индексу 1, поэтому на выходе будет 1.