【问题标题】:Ruby: Assigning Variables in GroupsRuby:在组中分配变量
【发布时间】:2013-08-30 20:14:51
【问题描述】:

在 Ruby 中是否可以按组命名变量,可能像这样?

(variable1, variable2, variable3) = 0

【问题讨论】:

    标签: ruby variables variable-assignment


    【解决方案1】:

    variable1 = variable2 = variable3 = 0 对于整数可能是安全的,但由于在 ruby​​ 中一切都是对象,因此这些实际上都指向同一个对象。对于其他类型,某些操作最终可能会将一个转换为副本,但您不能假设会是这种情况,您可能最终会不经意地一次修改所有这些。 例如,如果您使用的是字符串:

    variable1 = variable2 = variable3 = "hello"
    variable1.upcase!
    puts variable1
    puts variable2
    puts variable3
      >>> HELLO
      >>> HELLO
      >>> HELLO
    

    并行分配更安全:

    variable1, variable2, variable3 = 0, 0, 0
    

    编辑:为了清楚起见,编辑了几个句子。

    【讨论】:

      【解决方案2】:

      你可以这样做:

       variable1 = variable2 = variable3 = 0
      

      阅读这个问题 :- is it right to assigning multiple variable like this a = b = c = d = 5 in ruby?

      所以通用的方法是:

       variable1, variable2, variable3 = [0] * 3
      

      【讨论】:

        猜你喜欢
        • 2012-03-07
        • 2011-04-03
        • 2018-02-15
        • 1970-01-01
        • 1970-01-01
        • 2011-11-23
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多