使用 |> 操作符可以写出更加漂亮的代码。
比如:
像这种代码
可以写成这样
在Elixir 中|>
就管道操作符(pipeline)用来写管道风格的表达式,|>
把符号左边表达式的结果作为右边表达式的第一参数
例如:
iex> [1, [2], 3] |> List.flatten |> Enum.map(&(&1 * 2))
[2,4,6]
&(&1 * 2)
等价于 fn(x) -> x * 2 end)
这个例子等同于
Enum.map(List.flatten([1, [2], 3]), &(&1 * 2))
使用些符号时要注意操作符的优先级,比如下面的表达式:
String.graphemes "Hello" |> Enum.reverse
会被这样处理,
String.graphemes("Hello" |> Enum.reverse)
这样是会返回错误,因为 Enumerable protocol 对于二进制类型没有定义,应该下面的方式写,加括号:
String.graphemes("Hello") |> Enum.reverse
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。