プログラミング

データ型とはなんぞや・・・!?(Ruby)

更新日:

出典:魁!!男塾

こんにちは、Nanayakuです。

今回は、Rubyのデータ型について解説していきます。

オブジェクトとは

Rubyでは、「データ」と「データの処理」の1つの集まりをオブジェクトと言います。

簡単に言うと、

プログラミングを行うのに便利な「単位」

のようなものです。

引用

created by Rinker
¥3,024 (2019/08/22 21:01:16時点 楽天市場調べ-詳細)
18b6d0e7.d41569ce.18b6d0e8.115771f0

Rubyでは全てのデータはオブジェクトとして扱われます。

オブジェクト指向とはなんぞや・・・!?

 

データ型とは

プログラミングでは、各データがどのようなデータを表しているか区別するためにデータ型と言うものがあります。

例)

江頭2:50

「2:50」は、名前(文字列)なのか時刻(数値)を表しているのか

 

文字列

複数の文字が並んだオブジェクトのことを文字列と言います。

文字列は「” ”(ダブルクォーテーション)」「’ ’(シングルクォーテーション)」で囲むことで定義します。

「””」は特殊文字が使え・式展開ができる違いがあります。

また、文字列は+で連結することができます。

特殊文字(\n→改行 \t→タブ)

 

数値

数字のオブジェクトのことを数値と言います。

これは” ”などで囲みません

また、数値オブジェクトは四則演算ができます。

 

オブジェクトのデータ型によって、処理が全く違うので注意が必要です。

 

変数

文字列や数字などのオブジェクトにラベル(名前)をつけて定義することができます。

そのラベルのついたオブジェクトを「変数」と言います。

変数は箱に例えられることが多く、オブジェクトを箱に入れるイメージです。

変数にオブジェクトを入れることを代入と言い、代入するには「=」をつかいます。

 

数学で「=」は左辺と右辺が等しいことを表しますが、プログラミングでは右辺の値を左辺に代入すると表します。

 

変数と定数

変数と似たもので定数があります。

変数は文字通り変更することが出来る箱で、プログラミングの途中で中身を変更できるものです。

定数は、1回定義したら変更する事が出来ないものを言います。

変数は小文字、定数は大文字で定義します。

 

配列

複数のオブジェクトを一括で管理するためのオブジェクトです。

画像の場合、[ , , ]でまとめたものが配列です。

配列は、同じくくりのオブジェクトを1つにまとめることができ、非常に使用頻度が高いです。

 

インデックス

配列は複数のオブジェクトをまとめることができますが、↑画像のように全て表示されては困ります。

そこで、配列の要素には「インデックス」と呼ばれる番号が振られています

インデックスは左(頭)から、「0」、「1」、「2」・・・と、0から順番に割り振られています。

このインデックスを指定することで、それぞれの要素を呼び出すことができます。

 

ハッシュ

ハッシュは配列と似ていて、まとめられたそれぞれの値に名前をつけることが出来るデータ型です。

ゲームのキャラのステータスをイメージしてもらえればいいと思います。

画像のように、それぞれのラベル(名前)で取り出すことができます。

画像の

Brave = {name: "namayasu" , HP: 29 , MP: 3}

Brave = {"name" => "namayasu" , "HP" => 29 , "MP" => 3}

をシンボル(:)を使って書き換えたものになります。

この詳しい解説はドットインストール(#09 ハッシュオブジェクトを使おう)でしているので、興味がある人は是非見てください。

 

メソッド

メソッドとは、オブジェクトを処理するものです。

例えば、文字列を数列に変更したり、配列の中からランダムに1つ要素を取り出すなどです。

画像の「length」は文字列の長さ(文字数)を返すメソッドです。

メソッドは使用したいオブジェクトに対して「.」でつなげます。

また、そのつないだオブジェクトのことをレシーバーと呼びます。

メソッド・・・.length

レシーバー・・・"Nanayaku"

 

返り値

メソッドを実行して返ってくる結果のことを返り値と言います。

画像の.lengthの場合、返り値は8となります。

この他にも様々なメソッドがあります。

 

自分でメソッドを定義する

Rubyでは、用意されているメソッドの他に、自分でメソッドを定義(作る)できます。

メソッドを定義するには、defを使用します。

↑「puts "Ruby"」の処理を行う「nanayaku」と言うメソッドを定義して、nanayakuを実行しています。

 

引数

メソッドには引数と言うオブジェクトを渡すことができます。

引数を渡すと、その値(オブジェクト)をメソッドが利用して処理を行います。

画像の処理を説明すると、①で引数の”Ruby”をnameと言う変数に代入し、puts nameを実行しました。

②も代入する値を”PHP”に変えただけで同じ処理をしています。

 

おすすめ

Rubyの基本的な文法はドットインストールで分かりやすく動画で解説しているので、是非見てください。

 

最後に

備忘録がわりに作ったので、間違っている所とかあったら、コメントくれると嬉しいです。

-プログラミング
-

Copyright© Nanayaku blog , 2019 All Rights Reserved Powered by AFFINGER5.