Ruby中的双方括号

Ruby中的双方括号,ruby,arrays,square-bracket,Ruby,Arrays,Square Bracket,给定以下代码: def map(char, charmap) unless map = charmap[[char]] unless map = charmap[[char, c = input.getc]] input.ungetc(c) if c map = '' end end map end 双方括号在做什么 谢谢这是采用数组作为参数的方法[]的应用 由于OP没有明确说明,我们无法判断charmap是什么,但例如,如果

给定以下代码:

def map(char, charmap)
    unless map = charmap[[char]]
     unless map = charmap[[char, c = input.getc]]
       input.ungetc(c) if c
       map = ''
     end
    end
  map
end
双方括号在做什么


谢谢

这是采用数组作为参数的方法
[]
的应用


由于OP没有明确说明,我们无法判断
charmap
是什么,但例如,如果它是散列,那么
charmap[[char,c=input.getc]
将返回
charmap
中与键
[char,input.getc]
对应的值,如果我尝试执行类似的操作:
charmap=[1];放置charmap[[1]]它不起作用。数组不能将数组作为索引,因此它确实不起作用。