Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

C#

C#のvarの使いどころは?初めての方に向けてサンプルプログラムを使ってご紹介

投稿日:

<目次>

(1) C#のvarの使いどころは?初めての方に向けてサンプルプログラムを使ってご紹介
 (1-1) ArrayListに異なるデータ型が混在しているパターン
 (1-2) LINQのクエリ結果取得

(1) C#のvarの使いどころは?初めての方に向けてサンプルプログラムを使ってご紹介

(1-1) ArrayListに異なるデータ型が混在しているパターン

ArrayListに複数のデータ型の値をAddしていったケースなどは、値を取り出すのが通常であれば手間ですが、var変数でループした値を受け取る事で、異なる型が混在していてもループ処理を行う事ができます。

(サンプルプログラム1)

using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace RP_IT0198_var_usage
{
 class Program
 {
  static void Main(string[] args)
  {
   ArrayList numlist = new ArrayList();
   //配列にstringとintを混ぜてAddする
   numlist.Add("One");
   numlist.Add(2);
   numlist.Add("Three");
   numlist.Add(4);
   numlist.Add("Five");
   numlist.Add(6);
   //varで受け取ることでループできる
   foreach (var num in numlist)
   {
    Console.WriteLine(num);
   }
  }
 }
}

(図111)実行結果

目次にもどる

(1-2) LINQのクエリ結果取得

LINQのクエリからは様々な型のデータが返される可能性があるため、それらの値を一つの変数で受け取れるのはこの「var型」のみになります。

(サンプルプログラム2)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SampleProgram
{
  class Program
  {
    static void Main(string[] args)
    {
      //探索対象の配列を定義
      string[] big4_names = { "Roger Federer", "Rafael Nadal", "Novak Djokovic", "Andy Murray" };
      
      //探索のクエリを定義
      //【ポイント】結果はvar変数で受け取る
      //  今回の例ではすぐ上で定義しておりstring型である事は明白ですが
      //  実際クエリ発行する際は外部から取得するためデータ型に確証がないケースでvarが活躍
      var myLinqQuery = from name in big4_names
               where name.Contains('e')
               select name;
      //クエリの実行
      foreach (var name in myLinqQuery)
        Console.WriteLine(name + " ");
    }
  }
}

(図121)実行結果

目次にもどる

Adsense審査用広告コード


Adsense審査用広告コード


-C#

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

C#のコンソールアプリで引数を与えて実行する方法

<目次> (1) C#のコンソールアプリで引数を与えて実行する方法  (1-1) 設定箇所  (1-2) サンプルプログラム  (1-3) サンプルプログラムの補足 (1) C#のコンソールアプリで引 …

Xamarin.Formsのプロジェクトを新規作成する手順

<目次> (1) Xamarin.Formsのプロジェクトを新規作成する手順  (1-1) Xamarin.Formsプロジェクトの作成   (1-1-1) プロジェクト新規作成   (1-1-2) …

C#のデリゲートが分からない・・を解決!初心者向けになるべく分かり易く説明してみた

<目次> (1) C#のデリゲートが分からない・・を解決!初心者向けになるべく分かり易く説明してみた  (1-1) デリゲートとは?「関数へのポインタ」だけでは説明しきれない・・  (1-2) デリゲ …

C#のIComparableの実装方法+IComparerとの違いについて

<目次> (1) C#のIComparableの実装方法+IComparerとの違いについて  (1-1) IComparableの概要とIComparableとの違い  (1-2) STEP0:比較 …

ASP.NETのViewBagとは?構文やサンプルプログラムもご紹介

  <目次> (1) ASP.NETのViewBagとは?構文やサンプルプログラムもご紹介  (1-1) 概要  (1-2) 構文  (1-3) サンプルプログラム (1) ASP.NETの …

  • English (United States)
  • 日本語
Top