C# listの中に指定した値が存在するかを判定する

  • 作成日 2020.10.14
  • 更新日 2022.03.04
  • C#
C# listの中に指定した値が存在するかを判定する

C#で、ndexOfメソッドを使用して、listの中に指定した値が存在するかを判定するサンプルコードを記述してます。

環境

  • OS windows10 pro 64bit
  • Microsoft Visual Studio Community 2019 Version 16.7.1

IndexOfメソッド使い方

IndexOfメソッドを使用すると、listの中に指定した値が存在するかを判定することが可能です。

// 配列を用意
string[] data = { "java", "c#", "vue", "react" };

var list = new List<string>();

list.AddRange(data);

// 一致しているものを検索してインデックス番号を返す 見つからなかった場合は-1を返します
int result = list.IndexOf("c#");

// 結果を表示
Console.WriteLine("{0}番目にあります", result+1); // 2番目にあります

Console.ReadKey();

サンプルコード

以下は、
「実行」ボタンをクリックして、用意したlistの中にtextboxに入力されている値が何番目にあったかを、別のtextboxに表示する
サンプルコードとなります。

using System;
using System.Collections.Generic;
using System.Windows.Forms;

namespace FormTestApp
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();            
        }

        private void button1_Click(object sender, EventArgs e)
        {
            // 配列を用意
            string[] data = { "java", "c#", "vue", "react" };

            var list = new List<string>();
            list.AddRange(data);

            // 一致しているものを検索
            int result = list.IndexOf(textBox1.Text);

            if (result >= 0)
            {                
                textBox2.Text = string.Format("{0}番目に見つかりました", result+1);
            }
            else
            {
                textBox2.Text = "一致しているものは見つかりません";
            }


        }
    }
}

list内に値が存在するか判定されることが確認できます。