我正在学习在线课程,通常需要一个非常简单的一行代码解决问题。现在有这样一个问题,给定以下数组:
["emperor", "joshua", "abraham", "norton"]
我必须使用#inject
函数来获取所有名字拼接成的一个字符串,每个名字的首字母大写,并用指定字符串分隔开,就像这样:
"Emperor Joshua Abraham Norton"
虽然使用 #map
和 #join
可以很容易地完成此操作,但这个具体的练习只需要使用 #inject。我想到了以下的方法:
["emperor", "joshua", "abraham", "norton"].inject("") do |memo, word|
memo << word.capitalize << " "
end
这会给我:
"Emperor Joshua Abraham Norton "
如何在不包含字符串末尾空格的情况下实现此目标?
- 我如何在不包含末尾空格的情况下实现这一点?
- 传递空字符串是否是使用 #inject 的正确方法?
- 我是否正确使用 << 来组合字符串?