我怎样才能大写的数组中的每个元素? [英] How can I uppercase each element of an array?

查看:146
本文介绍了我怎样才能大写的数组中的每个元素?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我怎样才能把元素融入大写的数组?预期的产出将是:

  [星期一,星期二,星期三,星期四,星期五]
= GT; [周一周二周三周四周五]

以下没有工作,把它们作为小写。

  Day.weekday.map(安培;:名)。每个{| the_day | the_day.upcase}
 = GT; [周一周二周三周四周五]


解决方案

返回一个新的阵列

如果您想返回一个大写的数组,使用 #map

 数组= [星期一,星期二,星期三,星期四,星期五]#返回的大写的版本。
array.map(安培;:upcase)
= GT; [周一周二周三周四周五]#返回原始的,未经修改的数组。
排列
= GT; [周一周二周三周四周五]

正如你所看到的,原始数组不会被修改,但可以使用从#map的大写的返回值的任何地方,你可以使用一个前pression。

位置

更新阵列

如果你想为大写就地阵列,使用 #map 而不是:

 数组= [星期一,星期二,星期三,星期四,星期五]
array.map(安培;:upcase)!
排列
= GT; [周一周二周三周四周五]

How can I turn an array of elements into uppercase? Expected output would be:

["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]  
=> ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY"]

The following didn't work and left them as lower case.

Day.weekday.map(&:name).each {|the_day| the_day.upcase }
 => ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"] 

解决方案

Return a New Array

If you want to return an uppercased array, use #map:

array = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]

# Return the uppercased version.
array.map(&:upcase)
=> ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY"]

# Return the original, unmodified array.
array
=> ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]

As you can see, the original array is not modified, but you can use the uppercased return value from #map anywhere you can use an expression.

Update Array in Place

If you want to uppercase the array in-place, use #map! instead:

array = ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]
array.map!(&:upcase)
array
=> ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY"]

这篇关于我怎样才能大写的数组中的每个元素?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆