Странное поведение list.clear () / list.add () в c#C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Странное поведение list.clear () / list.add () в c#

Сообщение Anonymous »

У меня есть код, как это: < /p>

Код: Выделить всё

List subList = new();
List mainList = new();

for (int i = 0; i < 10; i++)
{
subList.Add("Something");

if ((i + 1) % 2 == 0)
{
mainList.Add(subList);
subList.Clear();
}
}
< /code>
Если после этого я проверю < /p>
Debug.WriteLine($"mainList: {mainList.Count}"); // Will display 5
Debug.WriteLine($"added subList: {mainList[0].Count}"); // Will display 0, why??
< /code>
Попытка получить доступ к основному списку [0] [0] будет выбросить исключение: < /p>
Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')
Если я заменяю sublist.clear () с помощью sublist = new () он работает правильно.
Что не так с list.clear ()? Похоже, он очищает список до того, как список будет добавлен в другой список. Почему это происходит и как использовать list.clear () правильно здесь? Или проблема в списке.add ()? Я не нашел ничего конкретного в Learn.microsoft.com

Подробнее здесь: https://stackoverflow.com/questions/796 ... in-c-sharp
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Является ли `[] (std :: list и list) {return std :: move (list);} (list)` гарантированно оставить `list` yelm?
    Anonymous » » в форуме C++
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Странное поведение pygame.event.clear в цикле для цикла [дубликат]
    Anonymous » » в форуме Python
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous
  • Странное поведение pygame.event.clear в цикле для цикла [дубликат]
    Anonymous » » в форуме Python
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Странное поведение pygame.event.clear in for loop
    Anonymous » » в форуме Python
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Написание List.Add(new List(){element_1, elemeny_2}) медленнее, чем добавление каждого элемента отдельно? [закрыто]
    Anonymous » » в форуме C#
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»