Ruby

配列の要素の全組み合わせを出力する

配列の要素の全組み合わせを出力したいということが発生したのでメモ array = %w[a b c d e] all_combi=[] array.count.times{|i| all_combi += array.combination(i+1).to_a} all_combi #=> [["a"], ["b"], ["c"], ["d"], ["e"], ["a", "b"], ["a", "c"], […

Rubyのinjectが便利な件

injectが便利なので、使い方をまとめてみた 使い方 引数で初期値を指定 ブロックの返り値が、ブロックの第一引数に代入 使用例(Array) 今までだと、 hoge = [1, 2, 3, 4, 5] sum = 0 hoge.each{|i| sum += i} sum #=> 15 と書かなければならなかったものが、…

instance_of?とis_a?の違い

instance_of?とis_a?の違いを、メモ。 以下のものを用いて実験 module Foo; end module Bar; end class Hoge include Foo end class Fuga < Hoge include Bar end fuga = Fuga.new instance_of? fuga.instance_of? Fuga #=> true fuga.instance_of? Hoge #=>…

&&とか||の返り値

&&と||の返り値に関して調べたので、メモ。 1 || 2 #=> 1 1 && 2 #=> 2 このようになるらしい。 というのも、 1 || 2 # この評価の時に、まずは、1をture/falseで評価するので、trueと評価され1が返る # && の評価も同様のロジック 直感的に、以下のように記…

ブロックについてのまとめ

Rubyを触り始めて早一年が経ちました。 やっと、ブロックつきメソッドを定義し、実装することができました。 そこで、Rubyのブロックに付いて簡単にまとめたいと思います。 参考たのしいRuby 第3版作者: 高橋征義,後藤裕蔵,まつもとゆきひろ出版社/メーカー:…

クラスとインスタンスのまとめ

Rubyをはじめたころの自分の記事が意外にも分かりやすかったので、改変して再掲載しますw クラスメソッドとインスタンスメソッド - mic_footprints ☆クラスメソッド クラスとは クラスとは、オブジェクトの種類を表したもの つまり、複数のオブジェクト(イン…

sortとsort_by

今回は、Rubyに関して書きます sortメソッド Arrayクラスのメソッド 配列内の要素を並び替えすためのメソッド 数の大きさ 行の長さ アルファベット順 アルファベット逆順 などなど たとえば、 array = ["a", "c", "b", "f", "d", "e"] sorted = array.sort d…

数値クラスと配列クラス

☆数値クラス 数値クラスまたの名をNumericクラスといいます。 数値クラスの構成 Numeric ―― Integer ―― Fixnum | |― Bignum |― Float 整数(Integer)クラスと浮動小数(Flaot)クラスは数値(Numeric)クラスを継承しています。普通の整数(Fixnum)クラスと大き…

subとgsubメソッド

今回は、subとgsubのお話です。この二つは、置き換えを行うメソッドです。処理もかなり似ております。☆sub文字列オブジェクトにおいて、正規表現として指定したパターンに、最初にmatchしたものを置き換えます。str.sub(/matchさせたいパターン/,"matchした…

継承に関して

☆継承継承とは、すでに定義されているクラスを拡張して、新しいクラスを作ることを言います。 先日の学級の例で言うと、C組(クラス)を継承していきものがかり(クラス)を作るとします。 いきものがかりは、係の中で新たなルールを策定します。 このとき、C…

クラスメソッドとインスタンスメソッド

☆クラスメソッドそもそもクラスとは何でしょうか? クラスとは、オブジェクトの種類を表したものです。 つまり、複数のオブジェクト(インスタンス)の枠組みと捕らえてよいでしょう。 もっと分かりやすくするために、クラスが学級で、インスタンスが生徒とし…

配列【Array】とハッシュ【Hash】

☆配列 配列(Array)とは、複数のオブジェクトを格納する箱です。 baseball_club1= "巨人" baseball_club2= "中日" baseball_club3= "ヤクルト" baseball_club4= "阪神" baseball_club5= "広島" は、無駄! なので、まとめます。 baseball_clubs = ["巨人","中…

条件判断 ifと、繰り返し whileとtimes、メソッドの作成

☆条件判断 if〜then〜end ある一定の条件の元にプログラムを実行したいときに使用する。 記述方法 if 条件 # 実行するプログラム(true) else # 実行するプログラム(false) end elseとは、上記の条件に当てはまらなかった場合ということ。 条件に当てはまる(t…

演算と変数に関して

☆Rubyによる演算1.+ +はそのまま足し算のこと print("1+1=",1+1,"\n") ⇒ 1+1=2 つまり、"1+1="を文字列として認識し、1+1を演算し、2というアウトプットを出した。 2.- -もそのまま引き算のこと。 print("1-1=",1-1,"\n") ⇒ 1-1=0 Rubyで、整数(Ex. 1,2,・・・e…

Rubyを始めるにあたって

☆Rubyの基本的なルールに関して 1.コードはエディタで書く。 (Ex. メモ帳,サクラエディタ,・・・etc.) 2.RubyFileの拡張子 〜.rb 3.コマンドプロンプトで呼び出すとき ruby RubyFile.rb と書く。 ☆コメントをつける 1.# print("a") <span style="color:#FF0000;">#aと書く</span> #以降、改行前ま…