日期:2014-05-17  浏览次数:21022 次

string[] 数组截取问题~~~~~~~~~
string[] s1={"a","b","c","d","e","f","h","ab","bc","abf","eh","bh","bcf","ch"}
如何截取这个数组内第二个到第十个的字符组合成字符串啊
得到结果     bcdef....

别告诉我用foreach~~~~~有其他方法么。。。

------解决方案--------------------

            string[] s1 = { "a", "b", "c", "d", "e", "f", "h", "ab", "bc", "abf", "eh", "bh", "bcf", "ch" };
            string[] arr = s1.Where((n, index) => index > 0 && index < 10).ToArray();
将arr转为字符串就行了

------解决方案--------------------
            string s = string.Join("", s1.Skip(1).Take(9).ToArray());

------解决方案--------------------
还有for  还有递归
------解决方案--------------------
string[] s1 = { "a", "b", "c", "d", "e", "f", "h", "ab", "bc", "abf", "eh", "bh", "bcf", "ch" };
            StringBuilder sb = new StringBuilder();
            int i = 2;
            while (i <= 10)
            {
                sb.Append(s1[i]);
                i++;
            }
            Console.WriteLine(sb.ToString());

------解决方案--------------------
string result = s1[2]+s1[3]+s1[4]+s1[5]+s1[6]+s1[7]+s1[8]+s1[9]+s1[10];
这个效率高

------解决方案--------------------
迟早都是要循环的,要不自己写循环,要不在程序内部循环,都一样!
------解决方案--------------------
for(int i=1;i<=9;i++)
{
     string str="";
     str=str+s[i];
}

------解决方案--------------------


    static class Program
    {
        static void Main()
        {
            string[] s1 = { "a", "b", "c", "d", "e", "f", "h", "ab", "bc", "abf", "eh", "bh", "bcf", "ch" };
            string ss = string.Join("", s1, 1, 5);
            Console.WriteLine(ss);