mich zu if
in den Club setzen lassen. Sie verwenden if
mit einer Bedingung und einer möglichen else
, das ist es. Sie verwenden die cond
-Anweisung, wenn Sie mehr als eine Bedingung haben und eine if
-Anweisung nicht genug ist. Am Ende wird die case
-Anweisung verwendet, wenn Sie einige Daten mit einem Muster vergleichen möchten.
Lassen Sie uns durch Beispiele erläutern: Angenommen, Sie Apfel essen wollen, wenn heute regnet oder Reis ist, wenn nicht, dann könnten Sie verwenden:
if weather == :raining do
IO.puts "I'm eating apple"
else
IO.puts "I'm eating rice"
end
Dies ist eine begrenzte Welt, so dass Sie Ihre Möglichkeiten erweitern möchten und aus diesem Grund werden Sie verschiedene Dinge auf einige Bedingungen essen, so die cond
Erklärung dafür ist, wie folgt aus:
cond do
weather == :raining and not is_weekend ->
IO.puts "I'm eating apple"
weather == :raining and is_weekend ->
IO.puts "I'm will eat 2 apples!"
weather == :sunny ->
IO.puts "I'm happy!"
weather != :raining and is_sunday ->
IO.puts "I'm eating rice"
true ->
IO.puts "I don't know what I'll eat"
end
die letzte true
sollte es anders sein, es wird eine Ausnahme ausgelöst.
Nun, was ist mit case
? Es wird verwendet, um Muster mit etwas zu vergleichen. Nehmen wir an, Sie die Informationen über das Wetter und den Tag der Woche als eine Nachricht in einem Tupel empfangen und Sie hängt davon ab, dass eine Entscheidung zu treffen, können Sie Ihre Absichten schreiben könnte wie:
case { weather, weekday } do
{ :raining, :weekend } ->
IO.puts "I'm will eat 2 apples!"
{ :raining, _ } ->
IO.puts "I'm eating apple"
{ :sunny, _ } ->
IO.puts "I'm happy!"
{ _, :sunday } ->
IO.puts "I'm eating rice"
{ _, _ } ->
IO.puts "I don't know what I'll eat"
end
So ist die case
Sie bringt Der Muster-Matching-Ansatz zu den Daten, die Sie nicht mit if
oder cond
haben.