using System;
using System.Collections.Generic;
public class ListBuilder
{
public static List<T> Build<T>(params T[] values)
{
List<T> built = new List<T>();
foreach (T value in values)
built.Add(value);
return built;
}
public static void Main(String[] args)
{
List<String> hw = ListBuilder.Build("Hello","World");
foreach (String str in hw)
Console.WriteLine(str);
Pair<double,String> pair = PairBuilder.MakePair(5.0,"Five");
Console.WriteLine(pair.First);
Console.WriteLine(pair.Second);
}
}
public class Pair<T,U>
{
private T first;
public T First
{
get { return first;}
}
private U second;
public U Second
{
get { return second;}
}
public Pair(T t, U u)
{
first = t;
second = u;
}
}
public class PairBuilder
{
public static Pair<M,N> MakePair<M,N>(M f, N s)
{
return new Pair<M,N>(f,s);
}
}