170 похожих чатов

Как написать компаратор при данных условиях? Есть у нас Структура Person,

В ней есть 7 полей.
Выдаётся условие, например сортировать по 3-м полям, 5-м. Всегда разное кол-во и разная последовательность.
Сортировать нужно например так:
Выдало нам за какими полями сортировать:
class surname year

Сортировать за классом, но если классы одинаковые, то сортировать за именем, если имя одинаковое, то сортировать за годом.

Ваще не выкупаю как это сделать

19 ответов

12 просмотров

Первое, что приходит на ум это паттерн спецификация и linq expression

Олежа🇺🇦- Автор вопроса
Anton 『被遗忘的社会』
Первое, что приходит на ум это паттерн спецификаци...

Не уверен что в стандарте 3 есть такое, или есть?

Олежа🇺🇦
Не уверен что в стандарте 3 есть такое, или есть?

У тебя есть хоть 1 причина использовать 3 стандарт?

Олежа🇺🇦- Автор вопроса
Anton 『被遗忘的社会』
У тебя есть хоть 1 причина использовать 3 стандарт...

Сдать на сайте универском это задание. Там нельзя новое юзать ничего

Олежа🇺🇦- Автор вопроса

Лол, 6к людей, никто не подскажет как?)

Олежа🇺🇦
Лол, 6к людей, никто не подскажет как?)

Тебе же подсказали) linq expressions используй

Принимаешь массив параметров, из массива параметры маппишь в поля класса В сортирующем методе foreach по массиву параметров-полей и каждый раз переприсваиваешь твой сортируемый Iqueryable В конце материализуешь или отдаешь IQueryable

Олежа🇺🇦
не понял как

Как сделать аррэй пропертей? Либо через рефлексию (но если ты будешь каждый раз обращаться к параметрам класса через рефлексию, то создашь очень большой оверхэд) Либо если их всего семь штук то захардкодь их

Олежа🇺🇦
Зачем делать масив свойств?

Как ты определяешь по каким полям нужно сортировать в коде?

Олежа🇺🇦- Автор вопроса
Egor Gusarenko
Как ты определяешь по каким полям нужно сортироват...

С консоли считываю параметры и записываю их в масив через Split()

https://docs.microsoft.com/en-us/dotnet/api/microsoft.xrm.sdk.data.expressions.predicatebuilder?view=dynamics-virtualentity-ce-9

Олежа🇺🇦
С консоли считываю параметры и записываю их в маси...

Этот массив ты и передашь в свой сортирующий метод

Олежа🇺🇦- Автор вопроса
Egor Gusarenko
Этот массив ты и передашь в свой сортирующий метод

Сортирующий метод это встроеный метод Array.Sort() и мне надо переопределить компаратор

Олежа🇺🇦
Сортирующий метод это встроеный метод Array.Sort()...

Почему нельзя заюзать этот метод? https://docs.microsoft.com/ru-ru/dotnet/api/system.linq.enumerable.orderby?view=net-5.0

Олежа🇺🇦- Автор вопроса
Egor Gusarenko
Почему нельзя заюзать этот метод? https://docs.mi...

Не уверен что препод приймит данный варик, но я и не знаю как его юзать, нэ понэмаю

Олежа🇺🇦
Не уверен что препод приймит данный варик, но я и ...

Разбирайся, материал тебе дали Для переопределения компаратора тебе нужно будет написать новый класс реализующий интерфейс IComparer (https://docs.microsoft.com/ru-ru/dotnet/api/system.collections.icomparer?view=net-5.0) Для твоих исходнных объектов и структур

Олежа🇺🇦- Автор вопроса
Egor Gusarenko
Разбирайся, материал тебе дали Для переопределени...

Ну да, спасибо, я не знал что надо что бы компаратор написать, по приколу спрашивал что внутри него писать)))

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта