C# Lists String Repository


This entry is part 2 of 5 in the series C# Lists

First we can create a list of strings in another class, instead of putting the list right in the Main program. Also we don’t have a class of our own types, like Books or People. Here we are just using strings. We have a class called StringRepository. We have a method called GetStrings(). In that method we return a list of strings. We use object initialization syntax to populate the list with some sample strings.

We have a method called GetStrings() in our class StringRepository. It returns a new list of strings.

Class StringRepository

using System.Collections.Generic;
namespace ListOfStringsRepository
{
    class StringRepository
    {
        public List<string> GetStrings()
        {
            return new List<string>() { "hey", "hi", "dude" };
        }
    }
}

Looking at our Main program in C#, we can use the foreach to go through. We need to instantiate our StringRepository class. Next we need to create a variable that will store our list of strings and call it strlst.

using System;
namespace ListOfStringsRepository
{
    class Program
    {
        static void Main(string[] args)
        {
            StringRepository myStrings = new StringRepository();  // instantiate
            List<string> strlst = myStrings.GetStrings();
            foreach (string s in strlst)
            {
                Console.WriteLine(s);
            }
        }
    }
}

Refactoring

We can shorted our code a bit and get the exact same result.

using System;
namespace ListOfStringsRepository
{
    class Program
    {
        static void Main(string[] args)
        {
            //StringRepository myStrings = new StringRepository();  // instantiate
            //List<string> strlst = myStrings.GetStrings();
            //
            // we can shorten our code and refactor it to use the line below
            // instead of the two lines above.
            var st = new StringRepository().GetStrings();
            foreach (string s in st)
            {
                Console.WriteLine(s);
            }
        }
    }
}
Series Navigation<< C# Lists IntroductionC# Lists Book Repository >>