C#中泛型のClassでの実現

1286 ワード

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

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            GenericArray<int> intArray = new GenericArray<int>(5);// 
            for (int i = 0; i < 5; i++)
            {
                intArray.SetItem(i, i * 5);
                Console.WriteLine(intArray.GetItem(i));
            }
            Console.WriteLine();

            // :
            GenericArray<char> charArray = new GenericArray<char>(5);
            for (int i = 0; i < 5; i++)
            {
                charArray.SetItem(i, (char)(i +97));
                Console.WriteLine(charArray.GetItem(i));
            }
        }
        public class GenericArray<T>
        {
            private T[] array;
            // 
            public GenericArray(int size)
            {
                array = new T[size];
            }
            // 
            public T GetItem(int index)
            {
                return array[index];
            }
            // 
            public void SetItem(int index, T value)
            {
                array[index] = value;
            }
        }
    }
}