为什么Ruby解压缩有时会返回一个数组,但有时会返回值?

问题描述 投票:0回答:1

在下面的代码中,我使用unpack()从字符串中准备一些字节:

  # unpack two bytes
  byte1, byte2 = "ABCDEFG".unpack("CC")
  # unpack one byte
  byte3 = "ABCDEFG".unpack("C")

当我将鼠标悬停在byte1上时,我会看到65;当我将鼠标悬停在byte2上时,我会看到66。为什么会这样?

arrays ruby string unpack
1个回答
0
投票

在第一个示例中,您正在破坏返回的数组。

在第二个示例中不是。

byte3总是返回一个数组(如文档中所述),但是您对该数组执行的[[do将会影响您的编辑器/ IDE中显示的内容。在第二个示例中,您将单个值设置为数组[0] = 65的返回值。

© www.soinside.com 2019 - 2024. All rights reserved.