퇴근5분전

훈스닷넷에 질문 : http://www.hoons.net/Board/QACSHAP/Content/85519

제목 : string이 아닌 String Array 한번에 파싱하는 방법이 혹시 있나요?

 

음. 10000개나 20000개 정도 늘어나면 느리다??

 

왜 느리지 하고... 만들어봤더니..

 

 const int max_length = 20000;
            string[] val = new string[max_length];

            for (int loop = 0; loop < max_length; loop++)
            {
                val[loop] = string.Format("a{0}, b{0}, c{0}, d{0}", loop);
            }

            Stopwatch sw = new Stopwatch();
            sw.Reset();
            sw.Start();
            string[] rst = new string[val.Length];
            for (int loop = 0; loop < max_length; loop++)
            {
                string[] tmp = val[loop].Trim().Split(',');
                if (tmp.Length > 1)
                    rst[loop] = tmp[1];
            }
            sw.Stop();
            this.Text = "" + sw.ElapsedMilliseconds.ToString("N0");

 

 

10000개 일때 7ms,  20000개 일때 24ms ... 겁나 빠른데...

 

느려지는 건 뭘까? 질문에서의 데이타가 다른거 겠지? 또는 어떤 대상과 비교했을때 느리다고 보는건가?

 

심심해서 잠깐... 해봤다.