.NETエンジニア・プログラマ向けの技術情報・業界ニュースをお届けします。

  1. FEnet.NETナビ
  2. .NETコラム
  3. プログラミング言語
  4. C#
  5. 【C#入門】C#のインデクサー(indexer)を使ってプログラミングをする

【C#入門】C#のインデクサー(indexer)を使ってプログラミングをする

  • C#
  • プログラミング言語
公開日時:   更新日時:
【C#入門】C#のインデクサー(indexer)を使ってプログラミングをする
基本情報技術者試験の試験対策はこちら>>

C#では、オブジェクトを配列のように扱う方法としてインデクサーというものがあります。呼び出し方や実装の仕方が通常のコードの書き方と多少異なっており、プロパティと似たような扱い方が可能です。インデクサーを使いこなすことで、コードを簡潔に記述することができます。

プログラマー
インデクサーってなんかカッコ良さようだけど、どうやって使うんですか?
プロジェクト
マネージャー
プロパティと挙動は似ていますね。使いこなせれば見やすいコードにすることができますよ。さっそく見ていきましょう。

C#におけるインデクサーの概要

C#におけるインデクサーは、あたかも配列であるかのように呼び出せる機能で、あらかじめユーザーが定義したコードを実行させることができます。クラス名などの名前を定義する必要がないため、コーディングに慣れていれば一目でインデクサーだと分かるでしょう。インデクサーの中で定義するgetは要素型のデータを返す必要があり、setでは要素型の引数を受け取ることになります。

インデクサーを使ったC#のプログラム

インデクサーは配列と似ていますが、中身は別物になっています。最大の特徴はアクセスする際の添え字がint型である必要がないことで、対応したデータを入れるようにすれば文字列でも添え字にすることが可能です。

実行結果

このコードでは、インデクサーで定義した文字配列の中身にアクセスして表示しています。

実行結果

このコードでは、あらかじめインデクサーに登録したキーワードを検索し、対応するインデックスに対応した文字列を返します。インデクサーのインデックスに文字列が適用できることを利用しています。

プログラマー
ちょっと難しそうですが、見た感じはすごく便利そうに見えます!
プロジェクト
マネージャー
そうですね。うまく使いこなせれば、凝った使い方もできますよ。

インデクサーの性質や使いどころを熟知する

インデクサーを上手く使った例として挙げられるのは、添え字に文字列を使えることを活かした簡単な辞書クラスでしょう。この使い方はインデクサーならではのもので、1対1の変換をしたい場合に特に威力を発揮します。また、コードを整理する上でも一役買う場面もあるため、C#でのコーディングをする際には意識しておきたいところです。

FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムロゴ

株式会社オープンアップシステムはこんな会社です

秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。

秋葉原オフィスイメージ
  • スマホアプリから業務系システムまで

    スマホアプリから業務系システムまで

    スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。

  • 充実した研修制度

    充実した研修制度

    毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。

  • 資格取得を応援

    資格取得を応援

    スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。

  • 東証プライム上場企業グループ

    東証プライム上場企業グループ

    オープンアップシステムは東証プライム上場「株式会社夢真ビーネックスグループ」のグループ企業です。

    安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。

株式会社オープンアップシステムに興味を持った方へ

株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。

年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。

株式会社オープンアップシステムへのご応募はこちら↓
株式会社オープンアップシステムへのご応募はこちら↓

C#新着案件New Job