ordered_vowel_words
메서드와 ordered_vowel_word?
도우미 메서드는 단어를 허용하고 단어의 모음이 (a, e, i, o, u)의 순서이면 단어를 반환합니다.이 기능은 어떻게 작동합니까?
로직을 이해하는 데 문제가 있습니다. 특히 도우미 방법의 마지막 블록 (0...(vowels_arr.length - 1)).all? do...
이 어떻게 작동하는지.
누군가가 어떻게 작동하는지 설명해주세요. range
에서 all?
이 호출되는 방식을 이해할 수 없습니다.
def ordered_vowel_words(str)
words = str.split(" ")
ordered_vowel_words = words.select do |word|
ordered_vowel_word?(word)
end
ordered_vowel_words.join(" ")
end
def ordered_vowel_word?(word)
vowels = ["a", "e", "i", "o", "u"]
letters_arr = word.split("")
vowels_arr = letters_arr.select { |l| vowels.include?(l) }
(0...(vowels_arr.length - 1)).all? do |i|
vowels_arr[i] <= vowels_arr[i + 1]
end
end
http://ruby-doc.org/core-2.1.0/Enumerable.html – Beartech