Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
0 / 0 / 2
Регистрация: 17.02.2016
Сообщений: 163
1
.NET 4.x

Как соединить два List<string> в один?

22.12.2017, 16:37. Показов 4072. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Сабж.
Количество строк в обоих листах одинаковое.
Необходимо, что бы строка List1<string>[1] соединилась со строкой List2<string>[1].
А было бы вообще здорово, если вставить между, какой разделитель.
Мои танцы с бубном, результата не дали.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.12.2017, 16:37
Ответы с готовыми решениями:

Конвертировать один элемент из List<List<Class>> в list и string
Как можно перевести один выбранный элемент из List&lt;List&lt;Data&gt;&gt; myList в list и string? Например,...

Как соединить два потока байт(звуков) в один?
Как соединить два потока байт(звуков) в один c#

Как передать list<string> в поток и как такой же list<string> вывести из потока?
Как передать list&lt;string&gt; в поток и как такой же list&lt;string&gt; вывести из потока в richtextbox?...

Как преобразовать List<List<string>> в IList<IList<string>>
Добрый день! Возникла задача преобразования листа в интерфейс листа. Не подскажите как грамотно...

8
16 / 16 / 9
Регистрация: 13.12.2011
Сообщений: 64
22.12.2017, 16:50 2
Вот так в list1[0] будет "q1,q2". А вы как же пробовали?
C#
1
2
3
4
5
List<string> list1=new List<string>();
List<string> list2=new List<string>();
list1.Add("q1");
list2.Add("q2");
list1[0] +=","+list2[0];
1
0 / 0 / 2
Регистрация: 17.02.2016
Сообщений: 163
22.12.2017, 17:07  [ТС] 3
это у Вас одну строку.
А у меня в листе по 20-50 строк.
Как циклом загнать?

Цитата Сообщение от HookMan007 Посмотреть сообщение
А вы как же пробовали?
lstOne.Concat(lstTwo);
ToList();
0
8941 / 4853 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
22.12.2017, 17:14 4
Kuk, добавь такой класс:
C#
1
2
3
4
5
6
7
8
9
10
11
12
internal static class Helper
{
    internal static IList<string> Concat<T>(this IList<T> list1, IList<T> list2, string separator = "")
    {
        var result = new List<string>();
        for (int i = 0; i < list1.Count; i++)
        {
            result.Add($"{list1[i]}{separator}{list2[i]}");
        }
        return result;
    }
}
И потом можно соединять:
C#
1
var list3 = list1.Concat(list2);
1
0 / 0 / 2
Регистрация: 17.02.2016
Сообщений: 163
22.12.2017, 17:35  [ТС] 5
А что в цикле происходит?
Можно Вас попросить пояснить.
Цикл for понятен. Вот это - result.Add($"{list1[i]}{separator}{list2[i]}");
Сам не программист, самоучка
0
8941 / 4853 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
22.12.2017, 17:54 6
Kuk, в цикле заполняется новый список, элементы которого — соединение соответствующих элементов исходных списков
1
0 / 0 / 2
Регистрация: 17.02.2016
Сообщений: 163
22.12.2017, 18:09  [ТС] 7
Тогда вот эта строка: var list3 = list1.Concat(list2); зачем?
Мы же, получается, уже получили новый список: var result = new List<string>();
0
16 / 16 / 9
Регистрация: 13.12.2011
Сообщений: 64
22.12.2017, 22:15 8
С циклом тоже всё работает.
C#
1
2
3
4
5
6
List<string> list1 = new List<string>();
            for (int i = 0; i < 50; i++)
                list1.Add(i.ToString());
            List<string> list2 = list1;
            for (int i = 0; i < 50; i++)
                list1[i] += list2[i];
Миниатюры
Как соединить два List<string> в один?  
0
3560 / 2501 / 1174
Регистрация: 14.08.2016
Сообщений: 8,206
22.12.2017, 23:17 9
C#
1
var result = list1.Zip(list2, (f, s) => string.Join(";",f,s)).ToList();
3
22.12.2017, 23:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.12.2017, 23:17
Помогаю со студенческими работами здесь

Разбить List<string> на несколько обьектов c List<string>
Задумался как я то кусочками все делить оказалось не так уж просто :scratch: List&lt;string&gt;...

List<string, string, string> есть ли в C# что-то подобное?
Мне надо добавить в List не только имя файла, но и некоторые строки из этого файла. Т.е. например,...

Как соединить 2 ogg файла в один?
Не могу найти способ как соеденить 2 ogg файла в один, но не последовательно а именно смешать звук...

Необходимо создать dll в которой буду обрабатывать list<list<string>>
Необходимо создать dll в которой буду обрабатывать list&lt;list&lt;string&gt;&gt; как объявить методы класса...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru