C# 配列の中に一致する値があるかを判定する

  • 作成日 2020.10.22
  • 更新日 2022.03.04
  • C#
C# 配列の中に一致する値があるかを判定する

C#で、Array.IndexOfメソッドを使用して、配列の中に一致する値があるかを判定するサンプルコードを記述してます。

環境

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

Array.IndexOfメソッド使い方

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

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

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

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

サンプルコード

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

using System;
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" };

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

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


        }
    }
}

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