5
我怎麼以下,例如如何在Erlang中匹配多個原子?
A = atom_a,
case A of
atom_b or atom_c ->
%do something here;
atom a ->
%do something else!
end.
我怎麼以下,例如如何在Erlang中匹配多個原子?
A = atom_a,
case A of
atom_b or atom_c ->
%do something here;
atom a ->
%do something else!
end.
嘗試以下操作:
case is_special_atom(A) of
true ->
%do something here;
false ->
%do something else!
end.
is_special_atom(atom_b) -> true;
is_special_atom(atom_c) -> true;
is_special_atom(_) -> false.
您可以使用衛士:
A = 'atom_a',
case A of
B when B =:= 'atom_b'; B =:= 'atom_c' ->
%do something here;
'atom_a' ->
%do something else!
end.
這*理*解決方案通常是一個很好的方法做到這一點。雖然我已經看到它在返回值遠比「boolean()」複雜得多的地方使用。使用輔助功能分析結果,然後對結果進行分析。 – 2012-03-19 14:53:36