[解決済み] Scalaで複数の値をパターンマッチさせるには?
2023-05-09 09:24:14
質問
リモートサービスからの複数の戻り値を同じコードで処理したいとします。これをScalaでどう表現したらいいのかわかりません。
code match {
case "1" => // Whatever
case "2" => // Same whatever
case "3" => // Ah, something different
}
Extract Methodを使って、それを呼び出せばいいのは分かっているのですが、やはり呼び出しの繰り返しがあります。Rubyならこんな風に書きます。
case code
when "1", "2"
# Whatever
when "3"
# Ah, something different
end
この例は単純化したもので、正規表現などでのパターンマッチはしないことに注意してください。マッチの値は実際には複雑な値です。
どのように解決するのか?
できます。
code match {
case "1" | "2" => // whatever
case "3" =>
}
パターンの一部を名前にバインドすることはできないことに注意してください - 現在、これはできません。
code match {
case Left(x) | Right(x) =>
case null =>
}
関連
-
[解決済み] Scalaのオブジェクトとクラスの違い
-
[解決済み] IntelliJ IDEAで依存関係が変更された後、build.sbtから強制的に再ロードするには?
-
[解決済み] Scala の Case Classes のオーバーロード・コンストラクタ?
-
[解決済み] タイプダイナミックの仕組みと使い方を教えてください。
-
[解決済み] なぜScalaのimmutable Setは型が共変しないのか?
-
[解決済み] Spark Dataframeの最初の1000行を取得する方法はありますか?
-
[解決済み] Scalaにおける効率的なインデックス付き反復処理
-
[解決済み] Scalaのコレクションにenrich-my-libraryパターンを適用するにはどうしたらいいですか?
-
[解決済み] scalaのApp traitとmainメソッドの違いについて
-
[解決済み] Scala における => と () => の意味 [重複].
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] RDDの内容を印刷するには?
-
[解決済み] ネストした構造体をよりきれいに更新する方法
-
[解決済み] 機能的デザインパターン【終了しました
-
[解決済み] Scalaにおけるparam: _*の意味とは?
-
[解決済み] scala で複数の case class をマッチングさせる
-
[解決済み] Scalaのtraitでvalとdefの使い分けは?
-
[解決済み] 関数型プログラミング(特にScalaとScala API)におけるreduceとfoldLeft/foldの違いとは?
-
[解決済み] コレクションのGroovyマップメソッド
-
[解決済み] Scalaで使える数学・統計のライブラリはありますか?[クローズド]
-
[解決済み] 複数の先物を待つには?