0 / 0 / 0
Регистрация: 01.04.2012
Сообщений: 10
1

Вернуть список списков (List<List<>>)

24.02.2013, 18:59. Показов 3080. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем доброго дня!
Ситуация следующая, из файла построчно читаются значения, одна строка один список, в каждой строке одинаковое количество значений, количество строк изменяемое. После считывания, все списки надо вернуть в одном списке (List<List<double>>).
Проблема в том, что когда я возвращая этот список, то внутренние списки оказываются пустыми.
Подскажите, пожалуйста, решение проблемы.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2013, 18:59
Ответы с готовыми решениями:

Инициализация элементов списка списков (List<List>) происходит одинаково для каждого элемента
Доброго времени суток. Не знаю как лучше озаглавить эту тему, но у меня проблема со следующим...

Копирование списков <List<List>>
Здравствуйте! Допустим есть некоторые метод SomeMethod, который принимает в качестве параметра...

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

Linq преобразование List<List<double>> в List<Array>
Доброго времени суток, данный код нужно преобразовать linq выражениями и дописать выборку из ...

6
Каратель
Эксперт С++
6609 / 4028 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
24.02.2013, 19:08 2
код ваш где?
0
0 / 0 / 0
Регистрация: 01.04.2012
Сообщений: 10
24.02.2013, 19:18  [ТС] 3
Чтение из файла, проходит нормально, все списки со значениями
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
List<List<double>> values = new List<List<double>>( );
            string input = string.Empty;
            List<double> tempList = new List<double>();
 
            using (StreamReader reader = new StreamReader( filePath ))
            {
                while ((input = reader.ReadLine( )) != null)
                {
                    foreach (var item in input.Split( '|' ))
                    {                       
                        tempList.Add( Math.Round(double.Parse( item.Replace( ',', '.' ) ), 4) );
                    }
                    values.Add( tempList );
                    tempList.Clear( );
                    tempList.TrimExcess( );
                }
            }
 
            return values;
0
309 / 307 / 125
Регистрация: 29.01.2013
Сообщений: 638
Записей в блоге: 1
24.02.2013, 19:20 4
Строчку tempList = new List<double>(); добавьте в начало цикла
0
0 / 0 / 0
Регистрация: 01.04.2012
Сообщений: 10
24.02.2013, 19:21  [ТС] 5
Цитата Сообщение от kontuPauk Посмотреть сообщение
как видно, забываете добавлять tempList в values.
C#
1
values.Add( tempList );
0
309 / 307 / 125
Регистрация: 29.01.2013
Сообщений: 638
Записей в блоге: 1
24.02.2013, 19:26 6
Ага, уже заметил. Вы добавляете всегда один и тот же объект, после этого его же очищаете. Ссылочный тип, елки зеленые
1
0 / 0 / 0
Регистрация: 01.04.2012
Сообщений: 10
24.02.2013, 19:28  [ТС] 7
Цитата Сообщение от kontuPauk Посмотреть сообщение
Ага, уже заметил. Вы добавляете всегда один и тот же объект, после этого его же очищаете. Ссылочный тип, елки зеленые
Только что сам увидел это)) Спасибо!)
0
24.02.2013, 19:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.02.2013, 19:28
Помогаю со студенческими работами здесь

Как вернуть List<string>?
всем привет, вопрос: как сделать return елементов List, если есть такой метод public...

Вернуть данные типа List<string>
Добрый день, вопрос в следующем. Есть программа, которая считывает данные из файла, обрабатывает их...

Построчное считывание двух списков List<> по условию
Есть два списка List: List&lt;string&gt; listCellsB = new List&lt;string&gt;(); List&lt;string&gt; listCellsC =...

Вернуть номер позиции в List по известному значению
Добрый день! Есть четыре List&lt;string&gt;. Допустим Main, One, Two, Three. Во всех списки url. ...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru