Приклади використання &:method_name

1. Отримання довжини рядків

words = ["hello", "world", "Ruby"]
lengths = words.map(&:length)  
puts lengths  

Вивід:

[5, 5, 4]

(Еквівалент words.map { |word| word.length })

2. Перетворення чисел у рядки

numbers = [1, 2, 3, 4]
string_numbers = numbers.map(&:to_s)  
puts string_numbers  

Вивід:

["1", "2", "3", "4"]

(Еквівалент numbers.map { |n| n.to_s })

3. Отримання класів об’єктів

items = [123, "hello", :symbol, 3.14]
classes = items.map(&:class)
puts classes  

Вивід:

[Integer, String, Symbol, Float]

(Еквівалент items.map { |item| item.class })

4. Видалення пробілів із рядків

names = [" Alice ", " Bob ", " Charlie "]
trimmed_names = names.map(&:strip)
puts trimmed_names  

Вивід:

["Alice", "Bob", "Charlie"]

(Еквівалент names.map { |name| name.strip })