powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Теоретический вопрос. Что лучше StringBuilder или List<string> ?
36 сообщений из 36, показаны все 2 страниц
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626361
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Часто бывает, что надо собрать итоговую строку из всяких кусочков.

Потом myStringBuilder.ToString() или myList.Join("хрень какая-нибудь")

Я , конечно, могу провести исследования, но вдруг кто-то уже делал?
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626364
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2,

При малом количестве строк String.Concat быстрее. При большом (больше ~5-10), уже быстрее StringBuilder.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626372
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2myList.Join("хрень какая-нибудь")это не в тему. Разное назначение.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626379
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Petro123Cat2myList.Join("хрень какая-нибудь")это не в тему. Разное назначение.
Почему? И так и так получается итоговая строка
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626381
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Исследований не делал, но StringBuilder это Сhar[], т.е. массив букав, которые трансформируются в строку одним действием.
Массив строк трансформируется в одну строку N-1 действием, где N размер массива. ИМХО это тормознее.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626387
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2Почему? И так и так получается итоговая строка
Вход то разный. Либо я не понял.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626396
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TИсследований не делал, но StringBuilder это Сhar[], т.е. массив букав, которые трансформируются в строку одним действием.
Массив строк трансформируется в одну строку N-1 действием, где N размер массива. ИМХО это тормознее.

При малом количестве строк, конкатенация быстрее. На скорость оказывают влияние прежде всего выделение памяти и копирование. Конкатенация очень хорошо оптимизирована, чтобы использовать её повсеместно, когда не надо склеивать кучу строк.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626405
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если не нужно вставлять в начало или середину текст, можно так
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
            using (var memoryStream = new MemoryStream())
            using (var stringWriter = new StreamWriter(memoryStream))
            {
                int i = 0;
                while (i++ < 10)
                {
                    stringWriter.Write(i);
                    stringWriter.Write(": ");
                    stringWriter.WriteLine("HelloWorld!");
                }
                stringWriter.Flush();
                memoryStream.Position = 0;
                using (var stringReader = new StreamReader(memoryStream))
                {
                    var text = stringReader.ReadToEnd();
                    MessageBox.Show(text);
                }
            }
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626455
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ещё не стоит забывать про работу GC, которую обеспечит массовая конкатенация строк
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626463
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Было уже, и даже с тестами: http://www.sql.ru/forum/1149509/optimalnyy-sposok-skleyki-ienumerable-string-v-stroku
hVosttCat2,
При малом количестве строк String.Concat быстрее. При большом (больше ~5-10), уже быстрее StringBuilder.
Смотря что в аргументах Concat. Если строки - да, быстрее, т.к. в итоге вызывается Buffer.Memmove , но внутри реализации самого String, с меньшим количеством проверок и всяческих аллокаций. Если param object[], IEnumerable<T>, итд - однохренственно, т.к. конкатенация делается всё тем же StringBuilder'ом (который в итоге тоже вызывает Buffer.Memmove).
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626472
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стати, только hVostt озвучил цифру до какой не следует голову забивать сабжем.
10 строк.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626491
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Стати, только hVostt озвучил цифру до какой не следует голову забивать сабжем.
10 строк.
А если 10000 раз по 10 строк?
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626496
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры ПавловныPetro123Стати, только hVostt озвучил цифру до какой не следует голову забивать сабжем.
10 строк.
А если 10000 раз по 10 строк?
Пофиг сколько раз, т.к. myStringBuilder.ToString() тоже 10000 раз надо будет делать.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626515
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры ПавловныPetro123Стати, только hVostt озвучил цифру до какой не следует голову забивать сабжем.
10 строк.
А если 10000 раз по 10 строк?))))
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626544
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры ПавловныБыло уже, и даже с тестами: http://www.sql.ru/forum/1149509/optimalnyy-sposok-skleyki-ienumerable-string-v-stroku

да какие там тесты...
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626552
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще для ускорения можно задействовать String.Concat (String, String, String, String)
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626560
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TЕще для ускорения можно задействовать String.Concat (String, String, String, String) это быстрее чем сложить плюсом?
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626562
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123это быстрее чем сложить плюсом?

Это тоже самое.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626660
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttCat2,

При малом количестве строк String.Concat быстрее. При большом (больше ~5-10), уже быстрее StringBuilder.
Если количество строк известно на момент компиляции, либо в рантайме будем иметь string[], то String.Concat однозначно быстрее.
Если будем иметь IEnumerable<T>, то лучше использовать String.Concat, он прячет в себя всю кухню со StringBuilder и несколько оптимизирован.
Если складываем в цикле заранее неизвестное количество строк, то лучше StringBuilder.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626682
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Dima TЕще для ускорения можно задействовать String.Concat (String, String, String, String) это быстрее чем сложить плюсом?

Прикол в том, что у string нет перегруженного оператора "+" - конструкция типа "s1 + s2" самим компилятором превращается в "String.Concat(s1, s2)". Сам совершенно случайно и неожиданно узнал это, только через 10 с лишним лет писательства на шарпе, при декомпиляции какой-то хрени :-)
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626689
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat,
Не поверишь, но его нет и например у Int32
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626696
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВЕсли будем иметь IEnumerable<T>, то лучше использовать String.Concat, он прячет в себя всю кухню со StringBuilder и несколько оптимизирован.
Если складываем в цикле заранее неизвестное количество строк, то лучше StringBuilder.

Хм, интересно, а когда в IEnumarable у нас стало «заранее известное» количество строк? :)
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626698
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthatПрикол в том, что у string нет перегруженного оператора "+" - конструкция типа "s1 + s2" самим компилятором превращается в "String.Concat(s1, s2)". Сам совершенно случайно и неожиданно узнал это, только через 10 с лишним лет писательства на шарпе, при декомпиляции какой-то хрени :-)

Ну а по сути-то какая разница, каким образом получился String.Concat из "+"? Компилятор вообще очень многое может оптимизировать, убирать переменные, разматывать циклы и т.д.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626702
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626709
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот результате на одном из рабочих тостеров

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
// * Summary *

BenchmarkDotNet=v0.10.13, OS=Windows 10 Redstone 3 [1709, Fall Creators Update] (10.0.16299.309)
Intel Core i7-7700 CPU 3.60GHz (Kaby Lake), 1 CPU, 8 logical cores and 4 physical cores
Frequency=3515633 Hz, Resolution=284.4438 ns, Timer=TSC
  [Host]     : .NET Framework 4.7 (CLR 4.0.30319.42000), 32bit LegacyJIT-v4.7.2633.0
  DefaultJob : .NET Framework 4.7 (CLR 4.0.30319.42000), 32bit LegacyJIT-v4.7.2633.0


        Method | Loops |          Mean |         Error |        StdDev |
-------------- |------ |--------------:|--------------:|--------------:|
  StringConcat |     1 |      66.34 ns |     0.7295 ns |     0.6824 ns |
 StringBuilder |     1 |      95.96 ns |     2.1974 ns |     2.6158 ns |
  StringConcat |     2 |     146.51 ns |     1.8228 ns |     1.6158 ns |
 StringBuilder |     2 |     168.01 ns |     3.7330 ns |     4.1492 ns |
  StringConcat |     3 |     242.12 ns |     4.8869 ns |     6.6892 ns |
 StringBuilder |     3 |     247.28 ns |     4.2082 ns |     3.9363 ns |
  StringConcat |     4 |     336.79 ns |     2.7485 ns |     2.2951 ns |
 StringBuilder |     4 |     317.92 ns |     7.1944 ns |     7.9966 ns |
  StringConcat |     5 |     422.54 ns |     7.7260 ns |     7.2269 ns |
 StringBuilder |     5 |     387.48 ns |     6.7156 ns |     6.2818 ns |
  StringConcat |    10 |     883.19 ns |    19.3459 ns |    28.3569 ns |
 StringBuilder |    10 |     730.95 ns |    13.7119 ns |    12.8262 ns |
  StringConcat |   100 |  11,478.13 ns |   172.2509 ns |   152.6959 ns |
 StringBuilder |   100 |   8,053.03 ns |   160.4904 ns |   219.6811 ns |
  StringConcat |  1000 | 275,755.58 ns | 5,462.6900 ns | 6,290.8413 ns |
 StringBuilder |  1000 |  85,726.60 ns |   522.7074 ns |   488.9408 ns |



Выделил переломный момент, где StringBuilder уже быстрее.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626739
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVostt,
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
const int Count = 10000;//0;
        static IEnumerable<string> GetV()
        {
            for(var i=0;i<Count;i++)
            {
                yield return Guid.NewGuid().ToString();
            }
        }
        static void Measure(Action action, string str)
        {
            System.Diagnostics.Stopwatch stopwatch = new System.Diagnostics.Stopwatch();
            Console.WriteLine($"Начало {str}");
            stopwatch.Start();
            action();
            stopwatch.Stop();
            Console.WriteLine($"Окончание {str} - {stopwatch.ElapsedTicks}");
        }
        static void IEnumerable(IEnumerable<string> src)
        {
            var tmp = string.Concat(src);
        }
        static void array(string[] src)
        {
            var tmp = string.Concat(src);
        }
        static void StringBuilder(IEnumerable<string> src)
        {
            StringBuilder sb = new System.Text.StringBuilder();
            var tmp = src.Aggregate(sb, (a, b) => { a.Append(b); return a; });
        }
        static void Plus(IEnumerable<string> src)
        {
            var tmp = src.Aggregate((a, b) => a + b);
        }
        public static void Main(string[] args)
        {

            var data = GetV();
            Measure(() => IEnumerable(data), "IEnumerable");
            var data2 = data.ToArray();
            Measure(() => array(data2), "array");
            Measure(() => StringBuilder(data), "StringBuilder");
            Measure(() => Plus(data), "Plus");
           
            Console.ReadLine();
        }
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626744
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЕвгенийВЕсли будем иметь IEnumerable<T>, то лучше использовать String.Concat, он прячет в себя всю кухню со StringBuilder и несколько оптимизирован.
Если складываем в цикле заранее неизвестное количество строк, то лучше StringBuilder.

Хм, интересно, а когда в IEnumarable у нас стало «заранее известное» количество строк? :)
если оно например ICollection
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626782
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВ,

так бенчмарки не снимают

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
    public class StringConcatArrayVsConcatEnumerableVsPlusVsStringBuilder
    {
        public const string Pattern = "Lorem ipsum dolor sit amet {0}";

        [Params(1, 2, 3, 4, 5, 10, 100, 1000)]
        public int N;

        public string[] _array;
        public IEnumerable<string> _enumarable;

        [GlobalSetup]
        public void Setup()
        {
            _array = new string[N];
            for (int i = 0; i < N; i++)
            {
                _array[i] = string.Format(Pattern, i);
            }
            _enumarable = _array.Where(p => p.Length > 0);
        }

        [Benchmark]
        public string StringConcatArray()
        {
            return string.Concat(_array);
        }

        [Benchmark]
        public string StringConcatEnumerable()
        {
            return string.Concat(_enumarable);
        }

        [Benchmark]
        public string StringPlus()
        {
            var result = string.Empty;
            for (int i = 0; i < N; i++)
            {
                result += _array[i];
            }
            return result;
        }

        [Benchmark]
        public string StringBuilder()
        {
            StringBuilder sb = new StringBuilder(string.Empty);
            for (int i = 0; i < N; ++i)
                sb.Append(_array[i]);
            return sb.ToString();
        }
    }



Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
BenchmarkDotNet=v0.10.13, OS=Windows 10 Redstone 3 [1709, Fall Creators Update] (10.0.16299.309)
Intel Core i7-7700 CPU 3.60GHz (Kaby Lake), 1 CPU, 8 logical cores and 4 physical cores
Frequency=3515633 Hz, Resolution=284.4438 ns, Timer=TSC
  [Host]     : .NET Framework 4.7 (CLR 4.0.30319.42000), 32bit LegacyJIT-v4.7.2633.0
  DefaultJob : .NET Framework 4.7 (CLR 4.0.30319.42000), 32bit LegacyJIT-v4.7.2633.0


|                 Method |    N |             Mean |          Error |         StdDev |
|----------------------- |----- |-----------------:|---------------:|---------------:|
|      StringConcatArray |    1 |        23.982 ns |      0.5336 ns |      0.5480 ns |
| StringConcatEnumerable |    1 |        90.579 ns |      1.9072 ns |      1.7840 ns |
|             StringPlus |    1 |         2.080 ns |      0.0691 ns |      0.0646 ns |
|          StringBuilder |    1 |        75.652 ns |      1.5876 ns |      2.1195 ns |
|      StringConcatArray |    2 |        38.391 ns |      1.1010 ns |      1.0299 ns |
| StringConcatEnumerable |    2 |       115.673 ns |      1.4674 ns |      1.3008 ns |
|             StringPlus |    2 |        27.955 ns |      0.6238 ns |      0.7660 ns |
|          StringBuilder |    2 |       128.713 ns |      2.4715 ns |      2.7470 ns |
|      StringConcatArray |    3 |        53.161 ns |      1.4823 ns |      1.3865 ns |
| StringConcatEnumerable |    3 |       140.397 ns |      2.7629 ns |      2.8373 ns |
|             StringPlus |    3 |        61.647 ns |      1.2816 ns |      2.3434 ns |
|          StringBuilder |    3 |       183.974 ns |      3.5172 ns |      2.9370 ns |
|      StringConcatArray |    4 |        68.256 ns |      1.5190 ns |      1.6253 ns |
| StringConcatEnumerable |    4 |       168.524 ns |      3.7721 ns |      3.3439 ns |
|             StringPlus |    4 |        98.268 ns |      1.9251 ns |      1.9769 ns |
|          StringBuilder |    4 |       200.536 ns |      3.8869 ns |      4.1590 ns |
|      StringConcatArray |    5 |        84.529 ns |      1.6994 ns |      2.0870 ns |
| StringConcatEnumerable |    5 |       205.156 ns |      4.0338 ns |      3.7732 ns |
|             StringPlus |    5 |       141.269 ns |      2.8260 ns |      2.6434 ns |
|          StringBuilder |    5 |       263.829 ns |      5.3262 ns |      6.9256 ns |
|      StringConcatArray |   10 |       192.574 ns |      3.6537 ns |      3.4176 ns |
| StringConcatEnumerable |   10 |       320.524 ns |      7.0209 ns |     10.5085 ns |
|             StringPlus |   10 |       456.999 ns |      9.1500 ns |     13.1226 ns |
|          StringBuilder |   10 |       403.016 ns |      7.8949 ns |      9.3983 ns |
|      StringConcatArray |  100 |     1,692.187 ns |     32.0964 ns |     35.6750 ns |
| StringConcatEnumerable |  100 |     3,308.953 ns |     62.5501 ns |     58.5094 ns |
|             StringPlus |  100 |    18,656.566 ns |    283.2511 ns |    236.5275 ns |
|          StringBuilder |  100 |     2,268.374 ns |     44.5242 ns |     65.2631 ns |
|      StringConcatArray | 1000 |    17,235.003 ns |    342.9311 ns |    480.7415 ns |
| StringConcatEnumerable | 1000 |    26,465.476 ns |    393.4232 ns |    368.0083 ns |
|             StringPlus | 1000 | 1,882,589.542 ns | 35,917.8520 ns | 35,276.1300 ns |
|          StringBuilder | 1000 |    18,221.928 ns |    362.7353 ns |    496.5162 ns |
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626795
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttfkthatПрикол в том, что у string нет перегруженного оператора "+" - конструкция типа "s1 + s2" самим компилятором превращается в "String.Concat(s1, s2)". Сам совершенно случайно и неожиданно узнал это, только через 10 с лишним лет писательства на шарпе, при декомпиляции какой-то хрени :-)

Ну а по сути-то какая разница, каким образом получился String.Concat из "+"? Компилятор вообще очень многое может оптимизировать, убирать переменные, разматывать циклы и т.д.ну дак плюс писать компактнее.
А то начнут вместо него писать чччччччч.concat а это все равно одно и то же)).
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626803
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
String.Concat(array) везде выигрывает потому, что он зная количество элементов, собирает размер для итогового буфера, и выделяет память один раз, потом тупо копирует.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626810
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttString.Concat(array) везде выигрывает потому, что он зная количество элементов, собирает размер для итогового буфера, и выделяет память один раз, потом тупо копирует.
Ну дак он же написал что пишем плюсы, а компилятор сам поправит.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626815
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123hVosttString.Concat(array) везде выигрывает потому, что он зная количество элементов, собирает размер для итогового буфера, и выделяет память один раз, потом тупо копирует.
Ну дак он же написал что пишем плюсы, а компилятор сам поправит.

Смотри на результаты :)
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626837
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЕвгенийВ,

так бенчмарки не снимают


Рад, что ты освоил тот фрейворк :)

А я снимаю как снимаю.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626848
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВРад, что ты освоил тот фрейворк :)

Я уже давно освоил, ща популизирую =)


ЕвгенийВА я снимаю как снимаю.

Смысл тратить время, и получать плавающие результаты.
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626863
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
hVosttЕвгенийВРад, что ты освоил тот фрейворк :)

Я уже давно освоил, ща популизирую =)


ЕвгенийВА я снимаю как снимаю.

Смысл тратить время, и получать плавающие результаты.
Твой код не скомпилируешь даже, не присоединив стороннего пакета, не говоря уже об запуске.

И что ты будешь делать со своим фреймворком, если надо в зависимости от результатов измерения выполнить определенное действие?
...
Рейтинг: 0 / 0
Теоретический вопрос. Что лучше StringBuilder или List<string> ?
    #39626864
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЕвгенийВТвой код не скомпилируешь даже, не присоединив стороннего пакета, не говоря уже об запуске.

Ну фиг знает, вам шашечки или ехать?

ЕвгенийВИ что ты будешь делать со своим фреймворком, если надо в зависимости от результатов измерения выполнить определенное действие?

Бенчмарки и измерения в рантайме, влияющие на логику это разные вещи, совершенно.
...
Рейтинг: 0 / 0
36 сообщений из 36, показаны все 2 страниц
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Теоретический вопрос. Что лучше StringBuilder или List<string> ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]