【问题标题】:Double square brackets in RubyRuby 中的双方括号
【发布时间】:2013-12-03 21:13:12
【问题描述】:

给定以下代码:

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

双方括号有什么作用?

谢谢

【问题讨论】:

    标签: ruby arrays square-bracket


    【解决方案1】:

    这是[]方法的应用,以数组为参数。

    由于 OP 没有明确说明,我们无法分辨 charmap 是什么,但例如,如果它是一个哈希,那么 charmap[[char, c = input.getc]] 将返回 charmap 中与键 [char, input.getc] 对应的值。

    【讨论】:

    • 如果我尝试做类似的事情:charmap = [ [ 1 ] ]; puts charmap[[1]]; 它不起作用。
    • 数组不能以数组为索引,所以确实不行。
    猜你喜欢
    • 2019-07-02
    • 1970-01-01
    • 2021-09-07
    • 1970-01-01
    • 2012-11-12
    • 2010-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多