Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
3 / 2 / 1
Регистрация: 13.05.2013
Сообщений: 234

Сделать реверс List в свойстве

17.01.2019, 00:41. Показов 3110. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Возможно ли сделать реверс в свойстве?
C#
1
2
3
4
5
6
7
8
9
10
11
12
    public class OrderBook
    {
        public string result { get; set; }
        public List<Deep> Asks { get; set; }  // сделать Reverse();
        public List<Deep> Bids { get; set; }
    }
 
    public class Deep
    {
        public decimal Price { get; set; }
        public decimal Quantity { get; set; }
    }
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.01.2019, 00:41
Ответы с готовыми решениями:

Реверс List<int>
List&lt;int&gt; list = new List&lt;int&gt; { 1, 2, 3, 4, 5 }; как сделать реверс через какой то алгоритм ?

Полу реверс в Linked List (двусвязный список)
Доброго времени суток! Пишу обертку с методами для следующей конструкции: class Node { int val; Node next; Node prev;...

Сделать текст жирным если он задан в свойстве Text контрола TextBox
Добрый день. Как я могу сделать текст жирным если он задан в свойстве Text контрола TextBox ? &lt;StackPanel&gt; ...

10
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16124 / 11248 / 2888
Регистрация: 21.04.2018
Сообщений: 33,080
Записей в блоге: 2
17.01.2019, 01:09
Цитата Сообщение от DEMON_RUS Посмотреть сообщение
Возможно ли сделать реверс в свойстве?
Может.
Revers делается в объекте. А поле или свойство это способ получения ссылки на этот объект. Каким образом Вы получаете ссылку значения не имеет.
0
3 / 2 / 1
Регистрация: 13.05.2013
Сообщений: 234
17.01.2019, 01:53  [ТС]
Цитата Сообщение от Элд Хасп Посмотреть сообщение
Может.
Revers делается в объекте. А поле или свойство это способ получения ссылки на этот объект. Каким образом Вы получаете ссылку значения не имеет.
C#
1
2
3
4
5
                var result = JsonConvert.DeserializeObject<Dictionary<string, OrderBook>>(json);
                foreach (var item in result)
                {
                    item.Value.Asks.Reverse();
                }
Просто хотелось избавиться от foreach и сделать Reverse() при десериализации.
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16124 / 11248 / 2888
Регистрация: 21.04.2018
Сообщений: 33,080
Записей в блоге: 2
17.01.2019, 12:12
Цитата Сообщение от DEMON_RUS Посмотреть сообщение
Просто хотелось избавиться от foreach и сделать Reverse() при десериализации.
Так не получится. Данные восстанавливаются в том же порядке в каком сохранялись.
Можно сделать через LINQ одной строчкой вместо двух Ваших, но по скорости это преимущества не даст. А если Вы не умеете "читать" LINQ, то только запутает Вас.
Делайте так как Вам самому проще и понятнее.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
17.01.2019, 12:31
Цитата Сообщение от DEMON_RUS Посмотреть сообщение
Просто хотелось избавиться от foreach и сделать Reverse() при десериализации.
Ну вот лежат у вас в списке элементы { 1, 2, 3 }.
Вы их сериализовали, потом десериализовали и при десериализации они превратились в { 3, 2, 1}.
Потом вы их снова сериализовали как { 3, 2, 1 }, затем десериализовали и они опять стали { 1, 2, 3 }.
Вам точно такое поведение нужно?
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
17.01.2019, 12:36
kolorotur, Я думаю, у него есть список {3,2,1}. Потом при сериализации он получает {1,2,3}, а при десериализации получит {3,2,1}
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16124 / 11248 / 2888
Регистрация: 21.04.2018
Сообщений: 33,080
Записей в блоге: 2
17.01.2019, 12:48
Цитата Сообщение от Masson1848 Посмотреть сообщение
Я думаю, у него есть список {3,2,1}. Потом при сериализации он получает {1,2,3}, а при десериализации получит {3,2,1}
То есть двойной реверс, сначала перед сериализацией, потом после?
Что-то замудрёно как-то...
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
17.01.2019, 12:55
Элд Хасп, К-Консперация. Больше я не представляю для чего нужна такая интересная система.
0
3 / 2 / 1
Регистрация: 13.05.2013
Сообщений: 234
17.01.2019, 14:42  [ТС]
С биржи приходит стакан заказов в формате json (никакой сериализацией не занимаюсь). К примеру:
JSON
1
{"bids":{"9.273", "9.271", "9.267", ...}, {"asks":{..., "9.276", "9.275", "9.274"}}
- список заявок на покупку Bids{9.273, 9.271, 9.267 ...}, список заявок на продажу Asks {... 9.276, 9.275, 9.274}. Чтобы получить лучшую цену Bid, после десериализации обращаюсь так - Bids[0].Price. Для получения лучшей цены на продажу приходится делать Asks[Asks.Length - 1].Price, что не оч красиво выглядит..) (Дело привычки, на многих биржах Asks приходит с обратным порядком, и доступ к лучшей цене на продажу делается так Asks[0].Price).

Вот я и хотел узнать, можно ли во время десериализации сделать так, чтобы Ask формировался в обратном порядке, и не пришлось делать реверс на объекте с помощью foreach.
0
Модератор
Эксперт .NET
 Аватар для Элд Хасп
16124 / 11248 / 2888
Регистрация: 21.04.2018
Сообщений: 33,080
Записей в блоге: 2
17.01.2019, 19:16
DEMON_RUS, первый член последовательности возвращает Firs(), последний Last(). Не надо обращаться по индексам к ним.

Добавлено через 3 минуты
Цитата Сообщение от DEMON_RUS Посмотреть сообщение
Вот я и хотел узнать, можно ли во время десериализации сделать так, чтобы Ask формировался в обратном порядке, и не пришлось делать реверс на объекте с помощью foreach.
Для Вашей задачи решения я уже написал.
А в целом - надо использовать реверс LINQ, а не реверс элементов в List.
0
Эксперт .NET
 Аватар для Wolfdp
3790 / 1767 / 371
Регистрация: 15.06.2012
Сообщений: 6,543
Записей в блоге: 3
17.01.2019, 20:38
Цитата Сообщение от DEMON_RUS Посмотреть сообщение
Asks[Asks.Length - 1].Price, что не оч красиво выглядит..
C#
1
var best = Asks.Last();
для получения первого элемента можно юзать First. И выучите linq.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.01.2019, 20:38
Помогаю со студенческими работами здесь

Есть ли возможность для Shape в свойстве BackStyle сделать градиентную заливку?
Подскажите, пожалуйста, есть ли возможность для Shape в свойстве BackStyle сделать градиентную заливку?

Сделать реализацию list (классы node и list) на шаблонах
Помогите написать прогу Необходимо: Сделать реализацию list (классы node и list) на шаблонах. 1.push_back 2.push_front 3.size ...

Сделать реверс четырехзначного числа
Дополните пожалуйста на 4ое var n, a, b, c: word; begin readln(n); a := n mod 10; //4 n := n div 10; //51 ...

Как сделать реверс двумерного массива?
Как сделать реверс двумерного массива?

Сделать реверс постов. Django. Блог. Начало
Пытаюсь, практикуясь, изучать Джанго. Что-то подобное вырисовывается в блог. Но есть 1 проблема, посты, которые я через shell добавляю они...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru