我是Elixir的新手,并尝试使用IO.puts
将一些内容打印到STDOUT。 IO.puts
需要chardata。我查看了Elixir文档,但没有找到将元组转换为位串的方法。我知道必须有一种方法可以做到这一点,但是我还没有发现任何可以做到这一点的BIF。
所以我想将{"foo", "bar", "baz"}
转换为"foobarbaz"
。
我正在学习Elixir和Erlang,因此对我来说,这都是很新的。
提前致谢!
最佳答案
通常,我们使用元组来保存固定数量的数据,这是预先已知的。因此,如果您要打印一个元组的内容,我建议您执行以下操作:
def print_tuple({ foo, bar, baz }) do
IO.puts foo <> bar <> baz
end
如果要打印的元组具有动态大小,则很有可能要使用列表。您可以使用许多函数将列表的元素转换为二进制文件,例如
Enum.join/2
:IO.puts Enum.join(list)
如果绝对确定要打印元组内容,则可以执行以下操作:
IO.puts Enum.join(Tuple.to_list(tuple))
请记住,您可以使用
IO.inspect/1
打印任何Elixir数据结构。关于types - 如何将Elixir元组转换为位串?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19572474/