あれとかこれとかそれとか

気まぐれプログラマーのブログです。簡単なことから小難しいことまで必死に勉強した内容を書き留めていきます。プログラム以外にも気になったことや面白かったことをまとめていこうと思います。

Swift

【Swift】 数値型と文字列の型変換

Int型とString型をそれぞれ n進数 に変換する方法です。※i=Int、s=Stringとしています。 2進数 8進数 10進数 16進数 Int→String String(i,radix:2) String(i,radix:8) String(i,radix:10) String(i,radix:16) String→Int Int(s,radix:2) Int(s,radix:8) Int(…

【Swift】 シミュレーターと実機で処理を分ける

実機とシミュレーターで処理を分けたい(設定を変えたい)場合は、#if を使用して処理を分けることができます。

【Swift】 値型の引数を関数内部で変更する方法

構造体等の値型の引数持つ関数で、引数の値を変更するためには inout パラメーターを使用します。 ちなみにクラスの場合は、参照型のため、inout パラメーター不要で変更できます。

【Swift】plistを読み込む

Swiftでプロジェクトに登録されている plist を読み込む方法です。 コンフィグ、固定で使いたい設定などを plist に書き込んでおくことで値の管理がしやすくなりますね。例えば以下のような内容の BarInfo.plist があるとします。このうち、Offset と Size …

【Swift】 NSCodingを継承した自作のクラスオブジェクトをアーカイブする

自作のクラスオブジェクトをエンコードしてNSData型に変換する方法に苦戦しました。 NSData型をデコードして自作クラスに戻すこともできます。ただ、デコード時には、NSData型が元はどのクラスであるかをプログラマーが把握している必要があるので、 ちょっ…

【Swift】 ArrayとDictionaryのネスト

Array型とDictionary型のネストのさせ方にハマりました。 データを作ったは良いが、配列の中身を確認する方法が少し難しかったのでおさらい。データ構造: section[data[item]] ①列挙体で、Dictionary型に使用するキー文字列を用意②item(Dictionary型) を含…

【Swift】 リバーシを作りましょう #3 オブジェクトの配置と判定の追加

前回の記事はこちらから aretoka-koretoka-soretoka.hatenablog.comオブジェクトを打つため、setObject 関数を作成します。 引数では、打つ予定のオブジェクトタイプと打つ座標をもらいます。①打てない条件のうち、 > 盤面の範囲外には打てない をチェックし…

【Swift】 リバーシを作りましょう #2 周辺座標に存在するオブジェクトを検索する

前回の記事はこちらから aretoka-koretoka-soretoka.hatenablog.com周辺座標に存在するオブジェクトを確認するため、searchObject 関数を作成します。 引数では、打つ予定のオブジェクトタイプと打つ座標をもらいます。処理の内容は①ローカル変数を用意して…

【Swift】 リバーシを作りましょう #1 初期化データの準備と説明

前回の記事はこちらから aretoka-koretoka-soretoka.hatenablog.comまずは、初期値として使用するデータを用意しておきます。①文字列の配列を使用してリバーシの盤面を表現します。 10x10で作成するため、10x10の2次元配列を用意します。②オブジェクトももち…

【Swift】 リバーシを作りましょう #0 機能検討

最近趣味で iOS のアプリを開発し始めました。言語は Swift を使用しています。お勉強がてらリバーシを作ってみます。AIとかそういった難しいことは良く分からないので、座標指定は手動で行い、指定した座標にオブジェクトを打つというシンプルなものです。…