Elixir 字符列表
2023-12-14 16:57 更新
字符列表仅仅是字符的列表:
iex> 'hełło'
[104, 101, 322, 322, 111]
iex> is_list 'hełło'
true
iex> 'hello'
'hello'
可以看出,一个字符列表包含了单引号间的字符的代码点,而非字节(注意如果某个字符超出了ASCII的范围,IEx将只输出其代码点)。所以双引号代表一个字符串(二进制数),单引号代表一个字符列表(列表)。
在实践中,字符列表通常用于与Erlang的接口,因为一些旧的库不接受二进制数作为参数。你可以使用to_string/1
和to_char_list/1
函数来相互转化字符列表和字符串:
iex> to_char_list "hełło"
[104, 101, 322, 322, 111]
iex> to_string 'hełło'
"hełło"
iex> to_string :hello
"hello"
iex> to_string 1
"1"
注意这些函数是多态的。它们不仅能将字符列表转换成字符串,也能将整数,原子等转换成字符串。
以上内容是否对您有帮助:
更多建议: