0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

C#初心者による繰り返し処理メモ

Last updated at Posted at 2023-02-02

初心者のForeachとWhileの使い分けメモです

・Foreachは中のデータを全て取り出したい時
・Whileはbreakで処理を抜けたい条件はある
 又は要素数が不確定な際に使用します。

個人的にはこんなイメージです。
正直違いが分からないし意味わかりませんでした。

一先ずはFor文から

    private void button1_Click(object sender, EventArgs e)
    {
        int sum = 1;
        for (int i = 1;i<5;i++)
        {
            sum = sum * i;
            Console.WriteLine(sum);
        }
    }

結果 1 2 6 24
カウントを保持し、そのカウントが抜けたら処理が終了します。

次にForeach文

    private void button1_Click(object sender, EventArgs e)
    {
        string[] array = new string[5] { "あ", "い", "う", "え", "お" }; 
        foreach (var arr in array)
        {
            Console.WriteLine(arr);
        }
    }

結果 あ い う え お
配列の中身を1つずつ取り出し、中身が無くなったら終了します。

最後にWhile文

    private void button1_Click(object sender, EventArgs e)
    {
        int i = 0; 
        while(true)
        {
            if(i == 5)
            {
                break;
            }
            i++;
        }
    }

結果 iが5になった場合、処理を抜けます。
whileの中をtrueで記載する際はbreakを忘れずに置き、無限ループに気を付けましょう。

また、実際の使用例ですが
※List lines = new List(); と上で宣言します。

        using (StreamReader reader = new StreamReader(".txt"))
        {
            //全て取得
            while (!reader.EndOfStream)
            {
                var txt = reader.ReadLine();
                lines.Add(txt);
            }
        }

StearmReaderにてEndOfStream(データがなくなるまで)リストに取得します。
foreachでは中身のデータが確立してる際に、不確定な場合はwhileを。

使い方は色々あるので、色々試してみてください。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?