【Swift】データ型とそのメリットについて徹底解説。|Fresopiya究極の自由を目指すブログFresopiyaFresopiya場所にもお金にも時間にも、何にも縛られない自由な状態になったら一体人間は何をしてどこに向かうのか。自由を目指すエンジニアのブログです。「哲学」と「プログラミング」と「政治経済」、「ブログ」がメインになるかと。【Swift】データ型とそのメリットについて徹底解説。09/11/2019スポンサードリンクどうも、とがみんです。プログラミングをするにあたって、重要な「データ型」について、この記事で紹介していきます。文字列型:String整数型:Int浮動少数点型:Float,Double論理型:Bool配列型:Arrayディクショナリー型なぜ、データ型を指定するのかより安全なプログラムを書くことができる様々なデータを表すことができるメモリを節約できるコードを書く際に気をつけることまとめ参考文献データ型とは「データ型」とは、プログラムで使うデータの型をいくつかの種類に分類したものです。種類がありますが、そう言ったデータの種類のことです。そもそも、データの一例として、以下のようなものがあります。「身長」は少数型のデータです。このように、データには様々な種類があり、それらのことをデータの型と言います。ついて紹介していきます。//配列の要素の番号は0から始まる。["ペンギン","ハリネズミ","猫","コアラ","犬"]//配列の要素の番号は0から始まる。23文字列型:String「文字列型」は、文字列を表すデータ型で、Stringで型を指定します。文字列のデータは“とがみん”のように、ダブルクォーテーションで囲います。整数型:Int「整数型」は、整数を表すデータ型で、Intで指定します。このInt型には、Int、Int8、Int16、Int32、Int64といくつか種類があります。この数字は、どれぐらいのメモリを使用するかということを表しています。「Int8」はメモリ8ビットで表せる整数型で、すなわち「-128〜127」の範囲の数字を扱う際に使います。「Int16」はメモリ16ビットで表せる整数型で、「-32,768〜32767」の範囲の数字を扱うことができます。「Int64」はメモリ64ビットで表せる整数型で、「-9,223,372,036,854,775,808〜9,223,372,036,854,775,807」の領域を表すことができます。浮動少数点型:Float,Double「浮動少数点型」は、少数を表すデータ型で、Double,もしくはFloatで指定します。Doubleは64ビット、Floatは32ビットのメモリを確保します。桁数の大きな少数点を扱いたい場合は「Double型」を使います。論理型:Bool「論理型」は「真:true」か「偽:false」の2値を表すデータ型で、Boolで表します。配列型:Array「配列型」は、複数の要素を並べた型です。上記のように、配列に入る型は、変数の横に、[String]のように型を指定します。配列の要素の番号は「0」から始まるので、配列の中の要素を取り出す際はprint(animal[0])のように書きます。ディクショナリー型ディクショナリー型は「キー」と「値」がセットになった配列のデータ型です。Yukiのように「キー」を用いて取り出します。データ型を指定するのか次に、なぜ、データ型を指定するのかについて説明していきます。データ型を指定するメリットとして、主に、以下の3つがあります。安全なプログラムを書くことができる。様々なデータを表すことができる。それぞれについて説明していきます。安全なプログラムを書くことができる型を指定することによって、プログラムを動作させた時の不具合を減らすことができます。型がなかった場合、以下のようにデータを格納してもエラーが出ません。身長:true1234//とがみんのデータ名前:1111年齢:"とがみん"身長:true型がなく、全ての変数が全てのデータを保持できた場合、誤って、名前に整数のデータを入れてしまう、年齢に名前を入れてしまう、身長にBool型のデータが入ってしまうといったことが起こってしまう可能性は十分あります。プログラム上では問題のないプログラムですが、何かしらサービスを運用する上で、それが起こってしまった場合、何らかのミスであると推測できます。整数型、「身長」には少数点型のデータしか入らないようにしておけば、そのミスにあらかじめ氣づくことができます。このように、型を指定することによって、予期せぬデータの代入を防ぐことができます。様々なデータを表すことができるデータの型を指定することによって、様々なデータを表現することができます。あらゆるデータをその2値で表現しないといけません。文字をコンピュータに認識させるにあたって、「文字コード」というものが存在します。文字コードとは、コンピュータ上で利用する文字と、各文字に割り当てたバイトで表した数字との対応関係を表したものです。以下は文字コードの対応表で最も基礎となる「ASCII」コードです。文字ごとにコードが割り当てられており、コンピュータはそのコードを元に、文字を表現します。数字の「1」はコンピュータ上でただの「1」でも、文字列の「1」は10進数で「49」の数字が割り当てられています。型を指定することによって、コンピュータ内で、そのデータ型にあった処理をしてくれます。型の処理といった感じです。このように、データ型のおかけで、整数だけでなく、少数や文字列といったデータをコンピュータで表現できるようになります。メモリを節約できる型の指定の仕方によって、メモリを節約することができます。「Int8型」は8ビットのメモリを使用し、「-128〜127」の整数を扱えます。「Int64型」は64ビットのメモリを使用し、「-9,223,372,036,854,775,808〜9,223,372,036,854,775,807」の整数を扱うことができます。プログラムを書く上で、「1〜100」の数字を扱いたい場合、用意するメモリは8ビットで十分です。「1〜100」の数字しか使わない場合、Int64で型を指定してしまった場合、無駄にメモリを消費してしまいます。このように、型の指定の仕方によって、メモリの使用の仕方を最適化することで、コンピューターのメモリの無駄を抑えることができます。コードを書く際に気をつけることコードを書く際に気をつける点として、異なるデータ型どうしの計算はできないことです。型が違えば、メモリの処理のされ方が違うので、以下のように、文字列と整数の計算をしようとするとエラーが出力されます。エラーなので、違う型どうしの計算をする場合、型をどちらか一方に統一する必要があります。以下が整数型に統一した場合と、文字列型に統一した場合です。55データの型によって、計算のされ型が違う点も氣をつけないといけない点です。まとめ今回はデータ型について説明しました。性能向上を目的とした研究をしていました。現在はFinTech系ベンチャー企業勤務。