Rubyのeachでindexを取得する:each_with_index
Rubyのeachメソッドは、配列の要素を1つずつ取り出すのに便利なメソッドですが、取り出す要素が何番目のものかを取得したいときがあります。そのような時に、eachメソッドの代わりに使えるのがeach_with_indexメソッドです。each_with_indexの使い方each_with_indexメソッドは、以下のように記述します。eachメソッドと似ていますが、ブロック引数がeachメソッ……
Rubyのeachメソッドは、配列の要素を1つずつ取り出すのに便利なメソッドですが、取り出す要素が何番目のものかを取得したいときがあります。そのような時に、eachメソッドの代わりに使えるのがeach_with_indexメソッドです。each_with_indexの使い方each_with_indexメソッドは、以下のように記述します。eachメソッドと似ていますが、ブロック引数がeachメソッ……
Rubyで、配列などから重複した要素を排除して取り出したいときがあります。そんなときRubyでは、uniqメソッドが使えます。 配列から重複を排除する 以下のような配列があるとします。 a = [1, 5, 3, 5, 7, 4, 3] これを見ると、5が2回、3も2回含まれています。この中で重複したものを除いた正味のものだけを取り出しましょう。 numbers = [1, 5, 3, 5……
プログラムがループ処理などを行なっているとき、途中である条件を満たしたときにそこから脱出したいことがあります。このようなときbreakを使います。 以下ではこのbreakの解説と、それに関係の深いnextを取り上げます。 breakの使用例 breakは、whileなどの繰り返し処理を止めて抜け出すために使います。 このプログラムは、ループの各回ごとに変数iが表示され加算されるシンプルな繰り……
Rubyはオブジェクト指向言語で、数値、文字列、式などの値はすべてオブジェクトとして扱います。 また、クラスベースのオブジェクト指向言語を主にサポートしており、オブジェクトはそれぞれが特定のクラスに属します。 今回は、クラスの定義などクラスの基礎について説明します。 クラスの基礎 クラスは以下のように定義することができます。 class クラス名 処理 end クラスを元に作成される……
Rubyにはブロック構文(ブロック付きメソッド)という構文があります。このブロック構文の使い方について説明します。 ブロック構文の例 ブロック構文は、eachメソッドなどで使われます。eachメソッドは、配列[1, 3, 7, 2, 5]の要素を1つずつ取り出し、do-endの記述された処理を実行します。 [1, 3, 7, 2, 5].each do |x| puts x end xは……
RubyでXMLファイルを扱う方法について説明します。 Rubyでは組み込みライブラリに、XMLファイルを扱うrexmlライブラリがあり、これを使ってXMLファイルを読み込みます。 rexmlライブラリを使ってXMLファイルを扱う方法 rexmlライブラリは、gemなどでインストールすることなくrequireだけで使えます。正確には、rexmlは名前空間モジュールで、REXMLのサブライブラリ……
Rubyの便利な機能の一つに、「モジュール」があります。 Rubyでは、オブジェクト指向プログラミングの基本となるクラスとそこから生成されるインスタンスの組み合わせに加えて、モジュールという特徴的な機能が用意されており、より柔軟にプログラムが書けるようになっています。 Rubyにおけるモジュールの基本 モジュールの書き方 module モジュール名 処理 end モジュール名の制限 モジュール……
Rubyでは、主に3種類のクラスで日付や時刻を処理します。 Timeクラス DateTimeクラス(日付、時刻) Dateクラス(日付) ここでは、それぞれのクラスごとに、日付を文字列に変換する方法を説明します。日付・日時フォーマットは、ページ下部の付録を参照してください。 Timeクラスのstrftimeメソッド Timeクラスのstrftimeメソッドで、文字列を指定のフォーマットで……
injectメソッドは、繰り返し計算を行うためのEnumerableモジュールのメソッドです。 Enumerableとは、「数え上げられる」「列挙可能」という意味で、Enumerableモジュールは、ブロックを使って配列やハッシュなどの要素を順番に処理するのに便利な機能を提供しています。 injectメソッドの使い方・書式 injectメソッドは、次のように使います。 オブジェクト.inject ……
本記事はイベントの参加者さまの寄稿記事になります 4月27日に開催されたUX JAM 8に参加してきました! UX JAMは8回目の開催とのことでしたが、私自身は初参加だったのでワクワクしながら会場へと向かいました。他には学生向けや女性スピーカー縛りのイベントも実施されているらしいですね。 さて、肝心のLTのご紹介です。 1. 株式会社サイバーエージェント 志甫侑紀さん "ニュースメディアSpo……