ruby中星号(*)的作用
2016-07-27 17:40
411 查看
1.有正常的乘法功能
3 * 4 == 12 # => true
2.数组*integer
[1,2 ,[3 , [4 ,5]]] *2 = [1,2 ,[3 , [4 ,5]] , 1,2 ,[3 , [4 ,5]]]
3.字符串*integer
"hello"*2 = "hellohello"
4.创建数组
*a = 1,3,"as" # => 相当于 a = [1,3, "as"]
5.数组参数传入时的前缀eg:
a= [1 , 2] testFun(*a) == testFun(1 , 2) != testFun([1,2])
如 gem redis-namespace中的代码:
Hash[*key.map {|k, v| [ add_namespace(k), v ]}.flatten]
又如:
Hash[:a, 1, :b, 2] # => {:a => 1, :b => 2} array = [:a, 1, :b, 2] Hash[array] # => {} Hash[*array] # 相当于 Hash[:a, 1, :b, 2] #=> {:a => 1, :b => 2}
3 * 4 == 12 # => true
2.数组*integer
[1,2 ,[3 , [4 ,5]]] *2 = [1,2 ,[3 , [4 ,5]] , 1,2 ,[3 , [4 ,5]]]
3.字符串*integer
"hello"*2 = "hellohello"
4.创建数组
*a = 1,3,"as" # => 相当于 a = [1,3, "as"]
5.数组参数传入时的前缀eg:
a= [1 , 2] testFun(*a) == testFun(1 , 2) != testFun([1,2])
如 gem redis-namespace中的代码:
Hash[*key.map {|k, v| [ add_namespace(k), v ]}.flatten]
又如:
Hash[:a, 1, :b, 2] # => {:a => 1, :b => 2} array = [:a, 1, :b, 2] Hash[array] # => {} Hash[*array] # 相当于 Hash[:a, 1, :b, 2] #=> {:a => 1, :b => 2}
相关文章推荐
- gmt_offset变量是干什么的
- CocoaPod的安装与问题处理
- mac下升级ruby环境版本
- 如何快速正确的安装 Ruby, Rails 运行环境-b
- ruby自动化之selenium webGUI
- cocoaPods安装遇到的问题以及解决方案
- ruby开发环境配置
- MAC机中安装ruby环境--转载
- Ruby(1):入门
- cocoapods的最新安装 遇到的坑 Error installing pods:activesupport requires Ruby version >= 2.2.2
- Ruby中 respond_to? 和 send 的用法 .
- 记录ruby的一些函数方法使用点点滴滴
- [Ruby]Rails的MVC部分理解
- 安装Ruby环境和下载和安装CocoaPods
- Ruby中使用each和collect进行迭代的用法
- ruby解析json、xml
- Mac上更新Ruby
- ruby on rails 常用的日期取值
- ruby on rails (MVC)
- RubyGems 镜像