ruby中星号(*)的作用
有正常的乘法功能
3 *
4 ==
12
数组*integer
[1,2,3] * 2 =
[1, 2, 3, 1, 2, 3] ;
[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]
demoFun(*
a) == demoFun(
1 ,
2)
demoFun(*
a)== demoFun([
1,
2])
demoFun(*
a) 等同于 demoFun(
1,
2)
6.查询sql:
sql:
values = [
'小明',
15]
User.where(
'name=? and age = ?', *values) #=> 等同于 User.where(
'name=? and age = ?',
"小明",
'15')
7.hash中的含义
Hash[
:a,
1,
:b,
2]
array = [
:a,
1,
:b,
2]
Hash[array]
Hash[*array]
转载请注明原文地址: https://ju.6miu.com/read-150227.html