Wie ersetzt man den ternären Operator aus C/C++ in Go? Idiomatische Wege
Hallo zusammen! Ich habe gerade angefangen, Go zu lernen, nachdem ich mehrere Jahre mit C++ gearbeitet habe, und bin auf ein Problem gestoßen. In C++ habe ich oft den ternären Operator für kurze bedingte Zuweisungen verwendet, zum Beispiel:\n\n```cpp\nint min = (a < b) ? a : b;\n```\n\nAber in Go gibt es diesen Operator nicht. Ich verstehe, dass man normales if/else verwenden kann:\n\n```go\nvar min int\nif a < b {\n min = a\n} else {\n min = b\n}\n```\n\nAber das braucht 4-5 Zeilen statt einer. Für einfache Dinge wie die Auswahl eines Werts oder die Formatierung eines Strings erscheint mir das zu umständlich. Zum Beispiel möchte ich so etwas machen wie:\n\n```go\nfmt.Println("Result: " + (score > 50 ? "Pass" : "Fail"))\n```\n\nOder einen Wert in Abhängigkeit von einer Bedingung innerhalb von return zuweisen:\n\n```go\nreturn (isValid ? data : defaultValue)\n```\n\nWie macht man das richtig in Go? Gibt es einen idiomatischen Weg, solche Konstrukte zu verkürzen? Vielleicht gibt es eingebaute Funktionen oder Patterns? Ich wäre dankbar für Codebeispiele.\n\n<<>>\n