広告スペース(バナー)
🍎Objective-C レッスン
基本文法の基礎8
データ構造とオブジェクト指向7
構文の基本を深める9
関数とデータ構造の応用9
アルゴリズムとテストの基礎8
文字列・数値操作の応用8
実務で役立つ機能8
アルゴリズム練習問題10
レッスン 47 / 68

複数の値を返す関数(NSDictionary)

このレッスンでは、Objective-CのNSDictionaryを使って複数の値を1つの関数から返す方法を学び、戻り値が1つに制限されない柔軟な関数の作り方を理解することを目標にします。「Objective-C NSDictionary 複数戻り値」で調べている方向けです。

NSDictionaryを使うと、複数の値を1つのまとまりとして関数から返せます。最小値と最大値のように、関連する複数の結果をまとめて返したい場合に手軽に使えます。

サンプルコードでは、minMax()関数が@{@"min": @(minVal), @"max": @(maxVal)}という辞書リテラルで最小値と最大値をまとめて返しています。valueForKeyPath:を使ったユニークな最小値・最大値の求め方にも注目してみましょう。

初心者がよくつまずくのが、辞書のキーに文字列を使う設計です。他の言語のようなタプルがないため、意味の分かるキー名を付けた辞書で代用するのがObjective-Cらしい書き方です。

実際の開発現場では、他の言語ではタプルで済ませる処理を、Objective-CではNSDictionaryを使って表現するのが一般的な作法です。

📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください

🧪 このサイトではObjective-Cを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。

🎯
ここまでできればゴール達成!
最小値と最大値を同時に返すような、便利な関数が作れるようになります。
広告スペース(バナー)
広告スペース(記事内)