ruby 基本的な構文とか

2011/10/06

「()」や「{}」などが省略されるしメソッドに「?」がついたりするので慣れるまでが大変。

if文のサンプル

基本は「[条件A]が[真]のとき[処理A]をし、[条件B]が[真]のとき[処理B]をし、[その他]は[処理C]をする

  1. if a > b
  2.   [処理A]
  3. elseif b < a
  4.   [処理B]
  5. else
  6.   [処理C]
  7. end

[条件A]が[真]のとき[処理A]を実行

※[条件A]を「a == b」とする

タイプ1

  1. if a == b
  2.   [処理A]
  3. end

タイプ2

  1. [処理A] if a == b

[条件A]と[条件B]が[真]のとき[処理A]を実行

※[条件A]を「a == b」、[条件B]を「c == b」とする

タイプ1

  1. if a == b and c == b
  2.   [処理A]
  3. end

タイプ2

  1. [処理A] if a == b and c == b

[条件A]が[真]のとき[処理A]、[偽]のとき[処理B]を実行

※[条件A]を「a == b」とする

タイプ1

  1. if a == b
  2.   [処理A]
  3. else
  4.   [処理B]
  5. end

タイプ2(三項演算子)

  1. (a == b)? [処理A]: [処理B];

※「()」は省略できるけど、優先順位の兼合いもあるので「()」はつけた方が無難かも。

[変数A]が[真]のときは[変数A]の内容、[偽]のときは[変数B]の内容を[変数C]に代入

タイプ1

  1. if [変数A]
  2.   [変数C] = [変数A]
  3. else
  4.   [変数C] = [変数B]
  5. end

タイプ2

  1. [変数C] = [変数A] || [変数B]

複合技的なif文

三項演算子との組み合わせ。

  1. A = B? C: D || E

※「B? C: D」の部分が三項演算子になる。

ループのサンプル

メソッド型(?)と関数型(?)みたいな感じで2種類ある。

メソッド型(?)のループ

配列のループはeachメソッドを使う。
※[val]に「arys[0]」や「arys[1]」とかをいれる。

タイプ1

  1. [配列].each do |val|
  2.   [処理]
  3. end

タイプ2

  1. [配列].each { |val|
  2.   [処理]
  3. }

タイプ3

  1. [配列].each |val|
  2.   [処理]
  3. end

※それぞれeachメソッドの引数に[処理]をセットするような感じ。

※他にもtimesメソッドとか色々ある。

関数型(?)のループ

「制御構造」と呼ばれるヤツらしい。

forやwhileも存在するけどeachメソッドで事足りる感じ?

新着(ニュース関連以外)

2018-07-26
年賀状で「新春」とか書くけど・・・何故なんだろうと8月を目前にした今、疑問に思った。
2018-05-16
PHPで画像のヘッダ情報(?)の「Orientation」を元に画像回転させたい。
2018-03-05
Android Studioをインストール。エミュレータを軽くするトコまで終わらせたかったけど、挫折した。
2018-02-23
プッシュ通知について調べてた時にでてきたServiceWorker。そのServiceWorkerについてのメモ。
2017-12-13
jqueryで取得したDOM要素をオブジェクトじゃなくて、配列で受け取りたい