有什么字符串数组的高效使用方法吗?
大至需求如下: 
 有一大堆字符串,需加入一个字符串数组,如需加入的字符串已存在数组中则返回所在数组的索引位置,如不存在则加入后再返回索引位置。 
 如下面的代码速度不是很快,有没有更好的,网上说把字符串数组连接为字符串加正则来做会快但好像没办法用在这里,不知有谁能写出更快的,数组大至int.MaxValue的长度 
 List <string>    stringcollection   =   new   List <string> (); 
 int   AddString(string   st) 
 { 
 int   tmp   =   stringcollection.IndexOf(st); 
 if   (   tmp   > -1) 
          return   tmp;   
 stringcollection.Add(st); 
 return   stringcollection.count-1; 
 }
------解决方案--------------------学习,关注一下
------解决方案--------------------@_@
------解决方案--------------------直接使用hashtable 。这样会更快一些!
------解决方案--------------------关注
------解决方案--------------------HashTabele试试
------解决方案--------------------短一点,不知道快不快  
            string b= "aa "; 
             List <string>  A = new List <string> (); 
             if (!A.Contains(b)) 
                 A.Add(b); 
             return A.IndexOf(b);