iterator(Map, Order) -> Iterator
OTP 26.0
类型:
Map = #{Key => Value}
Order = iterator_order(Key)
Iterator = iterator(Key, Value)
返回一个Map迭代器Iterator
可以使用maps:next/1
使用给定的键遍历映射中的键值关联Order
.
如果 Map
不是映射或者 Order
无效,则调用失败并出现 {badmap,Map}
异常。
示例(当 Order
为 ordered
时):
> M = #{ a => 1, b => 2 }.
#{a => 1,b => 2}
> OrdI = maps:iterator(M, ordered), ok.
ok
> {K1, V1, OrdI2} = maps:next(OrdI), {K1, V1}.
{a,1}
> {K2, V2, OrdI3} = maps:next(OrdI2),{K2, V2}.
{b,2}
> maps:next(OrdI3).
none
示例(当 Order
为 reversed
时):
> M = #{ a => 1, b => 2 }.
#{a => 1,b => 2}
> RevI = maps:iterator(M, reversed), ok.
ok
> {K2, V2, RevI2} = maps:next(RevI), {K2, V2}.
{b,2}
> {K1, V1, RevI3} = maps:next(RevI2),{K1, V1}.
{a,1}
> maps:next(RevI3).
none
示例(当Order
是算术排序函数时):
> M = #{ -1 => a, -1.0 => b, 0 => c, 0.0 => d }.
#{-1 => a,0 => c,-1.0 => b,0.0 => d}
> ArithOrdI = maps:iterator(M, fun(A, B) -> A =< B end), ok.
ok
> maps:to_list(ArithOrdI).
[{-1,a},{-1.0,b},{0,c},{0.0,d}]
> ArithRevI = maps:iterator(M, fun(A, B) -> B < A end), ok.
ok
> maps:to_list(ArithRevI).
[{0.0,d},{0,c},{-1.0,b},{-1,a}]
相关用法
- erlang iterator(Map)用法及代码示例
- erlang is_file用法及代码示例
- erlang is_dir用法及代码示例
- erlang is_atom用法及代码示例
- erlang is_key用法及代码示例
- erlang is_tuple用法及代码示例
- erlang is_binary用法及代码示例
- erlang is_pid用法及代码示例
- erlang is_process_alive用法及代码示例
- erlang is_alive用法及代码示例
- erlang init(UserData :: user_data(), AccessMode :: write | read, Fun :: file_op())用法及代码示例
- erlang insert_element(Index, Tuple1, Term)用法及代码示例
- erlang integer_to_binary(Integer)用法及代码示例
- erlang integer_to_binary(Integer, Base)用法及代码示例
- erlang integer_to_list(Integer)用法及代码示例
- erlang integer_to_list(Integer, Base)用法及代码示例
- erlang iolist_size(Item)用法及代码示例
- erlang iolist_to_binary(IoListOrBinary)用法及代码示例
- erlang iolist_to_iovec(IoListOrBinary)用法及代码示例
- erlang is_map_key(Key, Map)用法及代码示例
- erlang is_process_alive(Pid)用法及代码示例
- erlang in(Item, Q1 :: queue(Item))用法及代码示例
- erlang in_r(Item, Q1 :: queue(Item))用法及代码示例
- erlang init(Q1 :: queue(Item))用法及代码示例
- erlang init_ack(Ret)用法及代码示例
注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 iterator(Map, Order) -> Iterator。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。