Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...

Справочник C#

Условия

условный оператор ветка иначе выбор по значению выбор выражением ветка выбора ветка по умолчанию условие ветки выбор в выражении проверка типа приведение без сбоя

Циклы

цикл со счётчиком цикл по набору цикл с условием цикл с постусловием выйти из цикла к следующему шагу прыжок на метку

Имена

пространство имён пространство на файл подключить пространство подключить тип целиком подключить на проект скрытые подключения короткое имя типа квалификатор глобального код без класса

Выражения

вернуть результат вывести тип неизменяемое значение создать объект new без повтора типа значение по умолчанию имя в строку объект типа размер значения ловить переполнение молчать о переполнении бросить из выражения копия с заменой ненужный результат разобрать на части объявить в out переменное число аргументов передать по ссылке отдать через аргумент только читать аргумент ссылка не дольше вызова срез от и до счёт с хвоста набор в скобках развернуть набор внутрь строка со вставками строка как написана строка без экранирования строка сразу в UTF-8 экраны в строке

Пустое

тип, который бывает null заглушить предупреждение запасное если null вызов если не null записать если пусто

Функции

короткая функция лямбда без захвата функция внутри функции отдать элемент лениво метод с ожиданием дождаться задачи ждать элементы потока занять блокировку

Паттерны

узнать тип и взять сравнить с константой забрать в переменную место без имени сравнение с порогом и, или, не по полям объекта по позиции в типе по элементам списка

Препроцессор

объявить символ снять символ ветка компиляции конец ветки свернуть кусок указание компилятору режим предупреждений null подменить номер строки

Основные

логический тип логическая истина логическая ложь один символ ключевое слово строки целое дробное точное дробное нет результата проверка на запуске любой ссылочный

Целые

байт без знака байт со знаком короткое целое короткое без знака целое без знака длинное целое длинное без знака целое размером указателя без знака, размер указателя дробное одинарной точности

Составные

массив несколько измерений массив массивов значение или пусто кортеж значений тип без имени

object

корень всех типов показать текстом равны по значению код для таблиц узнать тип на запуске одна и та же ссылка мелкая копия

Nullable

обёртка значения значение на месте достать значение значение или запас

Guid

уникальный идентификатор пустой идентификатор случайный идентификатор идентификатор по времени разобрать идентификатор разобрать без сбоя идентификатор в строку

Индекс и диапазон

позиция с начала или конца позиция от хвоста пара границ диапазон целиком

HashCode

собрать хеш из частей добавить часть получить код код из аргументов

int

тип int верх границы низ границы разобрать строку разобрать без сбоя целое в строку сравнить целые зажать int как читать число

Длинные и без знака

тип long верх long низ long разобрать long long без сбоя целые без знака целое 128 бит

double

тип double не число плюс бесконечность минус бесконечность шаг у нуля верх double низ double это не число это бесконечность конечное число разобрать double double без сбоя double в строку тип float

decimal

тип decimal верх decimal низ decimal разобрать decimal decimal без сбоя decimal в строку округлить деньги вниз до целого вверх до целого отбросить дробь внутренние разряды

bool

тип bool разобрать bool bool без сбоя bool в строку

Перечисление

операции над enum разобрать имя имя без сбоя имя по значению все имена все значения такое значение есть флаг включён какой целочисленный имя или число

Большие

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

Основное

числовые функции число пи основание логарифма два пи модуль знак числа меньшее из двух большее из двух зажать в диапазон те же функции для float куда округлять середину арифметика на типе

Округление

округлить вниз до целого вверх до целого отбросить дробь

Степени

возвести в степень квадратный корень кубический корень натуральный логарифм десятичный логарифм двоичный логарифм экспонента

Тригонометрия

синус косинус тангенс арксинус арккосинус арктангенс угол по двум катетам гиперболический синус гиперболический косинус гиперболический тангенс

Целые

частное и остаток произведение пошире перенести знак следующее float предыдущее float

Случайное

генератор случайных общий генератор случайное целое случайное длинное дробное от 0 до 1 float от 0 до 1 заполнить байты выбрать из набора перемешать на месте

Биты

биты целого сколько единиц нули слева нули справа циклический сдвиг целый логарифм

Основное

сама строка длина строки символ по месту вырезать срез пустая строка такой кусок есть начинается с кончается на где первое вхождение где последнее заменить кусок разрезать на части склеить через разделитель склеить подряд сложить строки шаблон со вставками null или пустая пустая или пробелы равны как текст

Правка

срезать края срезать начало срезать конец добить слева добить справа вставить внутрь вырезать кусок взять подстроку выровнять концы строк отдать символами скопировать символы собрать без лишней строки

Регистр и сравнение

в верхний регистр в нижний регистр верхний без культуры нижний без культуры сравнить с культурой сравнить по кодам равны ли строки где любой из символов нормальная форма Юникода одна копия на текст

Как сравнивать

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

Символ

операции над символом это цифра это буква буква или цифра пробельный символ верхний регистр нижний регистр знак препинания управляющий символ числовой символ половина пары UTF-16 символ из ASCII символ в верхний символ в нижний число из символа код целиком

Руна

целый символ Юникода код символа руна в строке собрать из кода руна-цифра руна-буква

Кодировка

байты и текст кодировка UTF-8 кодировка UTF-16 кодировка ASCII кодировка Latin-1 текст в байты байты в текст сколько байт выйдет метка порядка байт перекодировать

Основное

сборка строки кусками текущая длина запас буфера символ в буфере дописать кусок дописать строку дописать через разделитель дописать по шаблону забрать строку

Правка

вставить внутрь вырезать кусок заменить в буфере очистить буфер заранее запас

Основное

общий тип массива число элементов сколько измерений длина измерения взять по индексам записать по индексам мелкая копия пустой массив

Поиск и порядок

отсортировать двоичный поиск где первое где последнее первое по условию все по условию есть по условию условие на всех перевернуть обойти действием

Правка

забить умолчанием заполнить значением скопировать участок сменить длину преобразовать элементы обёртка только чтение

Основное

список элементов сколько элементов запас вместимости элемент по индексу дописать в хвост дописать пачку вставить на место вставить пачку убрать по значению убрать по индексу очистить список такой элемент есть заполнить в фигурных

Края и участок

убрать участок убрать по условию взять участок скопировать в массив отдать массивом ужать запас заранее запас

Поиск

где первое где последнее первое по условию последнее по условию все по условию индекс по условию выполняется условие условие на всех двоичный поиск

Порядок

отсортировать перевернуть обойти действием преобразовать элементы обёртка только чтение

Контракты

набор для обхода шаг обхода шаг к следующему текущий элемент набор со счётом набор с индексом набор только читать индекс только читать обёртка списка

Сравнение

тип умеет сравнивать сравнить с другим чужой сравниватель кто больше готовый сравниватель сравниватель типа равенство без упаковки равны ли чужое равенство равны по правилу код по правилу готовое равенство равенство типа

Неизменяемые

список без правки новый список с элементом заморозить список править пачкой массив без правки новый массив с элементом заморозить массив

Основное

таблица ключ-значение сколько пар значение по ключу все ключи все значения как сравниваются ключи записать пару записать если ключа нет убрать по ключу очистить таблицу такой ключ есть такое значение есть взять если есть заранее запас ужать таблицу

Пара

одна пара ключ пары значение пары

Контракты

таблица как контракт таблица только читать обёртка таблицы

Порядок вставки

таблица в порядке добавления вставить на позицию убрать по позиции

По ключу

таблица по возрастанию ключа пары в массиве

Неизменяемые

таблица без правки новая таблица с парой заморозить таблицу таблица только для чтения заморозить для поиска взять из замороженной

Основное

множество без повторов сколько элементов как сравниваются добавить элемент убрать элемент очистить множество такой есть взять сохранённый

Наборы

добавить все из другого оставить общие вычесть другое оставить разные это подмножество это надмножество есть пересечение те же элементы заранее запас ужать множество

Контракты

множество как контракт множество только читать

По порядку

множество по возрастанию наименьший наибольший срез по границам

Неизменяемые

множество без правки новое множество с элементом заморозить множество множество только для чтения заморозить множество есть в замороженном

Очередь

очередь в хвост сколько ждёт поставить в хвост снять голову глянуть голову снять если есть глянуть если есть очистить очередь такой есть в очереди отдать массивом

Стек

стопка поверх высота стопки положить сверху снять верх глянуть верх снять если есть глянуть если есть очистить стопку

Связанный список

цепочка узлов первый узел последний узел длина цепочки вставить в голову вставить в хвост вставить перед узлом вставить после узла убрать узел снять голову снять хвост найти узел узел цепочки значение узла следующий узел предыдущий узел

Приоритет

очередь по приоритету сколько ждёт поставить с приоритетом поставить пачку снять важный глянуть важный снять если есть глянуть если есть очистить чем меряется приоритет

Как работает

когда запрос выполняется запрос деревом выражений

Синтаксис запроса

источник запроса что отдать оставить по условию упорядочить в запросе сгруппировать соединить источники промежуточное имя продолжить запрос

Создание

методы последовательностей пустая последовательность числа подряд одно значение много раз

Проекция и фильтр

превратить каждый развернуть вложенное оставить подходящие оставить нужный тип привести элементы

Порядок

упорядочить по умолчанию упорядочить по ключу по убыванию следующий ключ следующий по убыванию перевернуть порядок уже упорядочено

Края

взять первые взять последние брать пока верно пропустить первые отбросить хвост пропускать пока верно нарезать кусками

Элемент

первый элемент первый или пусто последний элемент последний или пусто ровно один один или пусто элемент по месту по месту или пусто

Проверки

есть хоть один условие на всех такой элемент есть сколько элементов счёт без обхода те же элементы подряд

Свёртка

свернуть в значение сумма среднее минимум максимум элемент с минимумом элемент с максимумом счёт по ключу свёртка по ключу

Множества

убрать повторы повторы по ключу объединить объединить по ключу общие элементы общие по ключу вычесть вычесть по ключу приставить хвост добавить в конец добавить в начало

Группы и связи

разложить по ключу таблица групп одна группа ключ группы группы по ключу соединить по ключу соединить группой идти парой пара с номером

В коллекцию

собрать в массив собрать в список собрать в таблицу собрать в множество запас если пусто скрыть лишний тип

Шаблон

символ как есть любой символ цифра буква, цифра, подчёркивание пробел набор символов всё кроме набора сколько раз как можно короче край строки или захватить кусок кусок с именем тот же кусок ещё раз глянуть вперёд глянуть назад экранировать метасимвол класс Юникода

Класс

шаблон поиска есть совпадение первое совпадение все совпадения заменить совпадения разрезать по шаблону экранировать текст снять экраны сколько совпадений обойти без лишних строк предел времени флаги шаблона шаблон на компиляции

Флаги

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

Совпадение

одно совпадение нашлось найденный текст где началось длина совпадения захваченные группы следующее одна группа группа нашлась текст группы имя группы все захваты один захват текст захвата где захват замена своей функцией

Файл

действия над файлом файл на месте удалить файл скопировать файл перенести файл прочитать весь текст прочитать по строкам прочитать байты строки лениво записать текст записать строки записать байты дописать текст дописать строки создать файл открыть поток открыть на чтение открыть на запись открыть читателем флаги файла записать флаги когда создан когда меняли подменить время

Папка

действия над папкой папка на месте создать папку удалить папку перенести папку список файлов список папок файлы и папки файлы лениво папки лениво текущая папка сменить текущую родительская папка корень пути диски машины

Сведения

объект про файл файл есть размер в байтах имя и путь флаги время правки скопировать перенести удалить поток чтения читатель текста перечитать сведения объект про папку создать удалить файлы внутри родитель

Путь

разобрать путь собрать путь собрать без лишних разделителей имя файла имя без расширения расширение папка пути полный путь путь от базы папка временных временный файл случайное имя расширение есть сменить расширение путь от корня путь уже полный корень пути срезать хвост разделитель папок второй разделитель разделитель в списке путей

Режимы

как открыть открыть существующий создать или обнулить создать, иначе сбой открыть или создать дописать в хвост обнулить существующий читать или писать кому ещё можно открыть флаги файла на какую глубину искать

Поток

общий поток байт прочитать байты записать байты сбросить буфер встать на позицию перелить в другой прочитать ровно столько прочитать хотя бы закрыть поток текущая позиция длина потока можно читать можно писать можно прыгать откуда считать позицию

Файл и память

поток файла поток в памяти забрать байты внутренний буфер буфер если открыт запас буфера поток с буфером

Текст

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

Двоичное

читать числа прочитать int прочитать long прочитать double прочитать bool прочитать строку прочитать байты исходный поток писать числа записать значение встать на позицию сбросить запись

Момент

дата и время сейчас местное сейчас по UTC сегодняшняя дата дата без времени время суток год месяц день месяца час и мельче день недели день в году местное или UTC тики нижняя дата верхняя дата начало Unix вид времени имена дней

Сдвиг

прибавить промежуток прибавить дни прибавить часы прибавить минуты прибавить секунды прибавить месяцы прибавить годы вычесть перевести в UTC перевести в местное пометить вид что раньше длина месяца високосный год

Разбор

разобрать дату дата без сбоя разобрать по шаблону шаблон без сбоя дата в строку флаги разбора

С поясом

момент и смещение сейчас со смещением сейчас в UTC смещение пояса момент в UTC местные часы секунды Unix из секунд Unix миллисекунды Unix из миллисекунд Unix сменить смещение разобрать со смещением в строку со смещением

Только дата и только время

дата без времени взять дату собрать момент сдвинуть дни сдвинуть месяцы сдвинуть годы разобрать дату день недели время без даты взять время из промежутка в промежуток сдвинуть время разобрать время

Промежуток

промежуток времени нулевой промежуток верх промежутка низ промежутка из дней из часов и мельче из тиков целые части всё в днях тики промежутка сложить промежутки вычесть промежуток модуль промежутка сменить знак разобрать промежуток промежуток без сбоя промежуток в строку

Пояс и секундомер

часовой пояс пояс машины пояс UTC пояс по имени все пояса перевести момент в UTC из UTC летнее время базовое смещение измерить промежуток запустить остановить сбросить и запустить обнулить сколько прошло прошло в миллисекундах создать и запустить сырой отсчёт промежуток между отсчётами

Перехват

начать рискованный кусок поймать исключение фильтр поимки выполнить в любом случае бросить исключение освободить в конце освободить в конце области освободить асинхронно

Иерархия

база исключений текст сбоя цепочка вызовов вложенный сбой код ошибки свои пометки самый внутренний сбой целиком

Аргументы

плохой аргумент сбой если пусто аргумент null сбой если null аргумент вне границ сбой если вне границ

Состояние

так сейчас нельзя операция не поддерживается ещё не сделано объект уже закрыт сбой если закрыт чужой тип вызов у null индекс мимо массива нет такого ключа

Числа и формат

строка не того вида не влезло в тип деление на ноль сбой арифметики

Ввод и среда

сбой ввода-вывода нет файла нет папки нет доступа кончилась память кончился стек

Задачи и сеть

пачка сбоев все вложенные снять вложенность разобрать каждый операцию отменили задачу отменили время вышло сбой HTTP-запроса кривой адрес кривой JSON кривой шаблон сбой криптографии

Формат

шаблон с дырками ширина и прижатие стандартные форматы чисел свой формат числа стандартные форматы даты свой формат даты тип со своим форматом формат прямо в буфер

Культура

правила языка и страны культура потока культура интерфейса нейтральная культура культура по имени код культуры правила чисел правила дат поставщик правил

Консоль

консоль вывести кусок вывести строку прочитать строку прочитать клавишу стандартный вывод поток ошибок стандартный ввод подменить вывод

Ссылки

тип только на стеке вернуть ссылку ссылка только читать поле-ссылка буфер на стеке небезопасный код приколоть объект указатель

Отрезок

отрезок памяти длина отрезка элемент отрезка отрезок пуст взять кусок скопировать в другой заполнить забить нулями скопировать в массив отрезок только читать отрезок, который можно хранить отрезок на сейчас длина кусок хранимый отрезок только читать

Операции над отрезком

методы отрезков где первое такой есть те же байты срезать края

Пул и сборка

одалживать массивы общий пул взять массив вернуть массив сборщик мусора запустить сборку сколько занято не звать деструктор удержать до этой строки какое поколение ссылка не держит объект объект если жив взять если жив объект ещё жив

Освобождение

есть что закрыть закрыть сейчас закрыть с ожиданием закрыть асинхронно

Формы типов

ссылочный тип тип-значение равенство полей запись-значение контракт типа именованные значения база без экземпляров тип без экземпляров тип внутри типа

Видимость

видно всем видно только типу видно наследникам видно сборке наследники или сборка наследники в сборке видно только файлу

Наследование

взять базу выполнить контракт имя контракта замена или тень реализация в контракте статика в контракте обязан перекрыть дальше не наследовать можно перекрыть перекрыть базовый скрыть базовый член член без экземпляра поле без записи поле видно потокам метод снаружи текущий экземпляр член базы

Создание

конструктор параметры у типа один раз на тип перед сборкой мусора вызвать другой свой конструктор базы

Члены

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

Операторы

свои плюс и минус свои равно и не равно свои больше и меньше скрытое приведение явное приведение свой смысл истины

Параметры

параметр типа метод с параметром типа значение по умолчанию для T тип с дыркой атрибут с типом

Ограничения

только ссылочный только значение есть пустой конструктор наследник базы без ссылок внутри не бывает null можно ref struct несколько ограничений

Вариативность

out, тип можно шире in, тип можно уже

Основное

объявить тип функции функция без результата функция с результатом проверка элемента несколько целей сразу метод как значение направление типов у делегата

События

обычный обработчик база делегатов сложить вызовы убрать вызов список целей

Явные

привести тип скрытое приведение явное приведение уложить в object достать из object

Convert

перекодировать значение в int в long в double в decimal в bool в строку в байт байты в Base64 Base64 в байты байты в hex hex в байты в тип на запуске

Байты числа

число и его байты число в байты байты в int байты в long байты в double байты в hex-строку записать в буфер биты double порядок байт машины

Задача

обещание результата запустить в пуле подождать дождаться всех дождаться первой по мере готовности уже готовая задача с значением задача со сбоем задача отменена отдать ход на каком этапе уже завершилась завершилась удачно завершилась сбоем завершилась отменой сбой задачи забрать результат ждать синхронно продолжить после где продолжать async без задачи лямбда с ожиданием

Обобщённая и короткая

задача с типом результата задача без лишнего объекта завершить руками завершить значением завершить сбоем завершить отменой завершить если ещё нет само обещание

Отмена

признак отмены отмены не будет уже отменили отмена возможна сбой если отменили вызвать при отмене источник отмены раздать признак отменить отменить через паузу связать источники закрыть источник

Асинхронный набор

набор с ожиданием шаг с ожиданием следующий с ожиданием текущий элемент

Блокировка

объект блокировки занять и отпустить занять отпустить занять если свободен отпустить и ждать разбудить одного разбудить всех счётчик допусков занять допуск вернуть допуск сколько свободно блокировка между процессами много читателей или один писатель сигнал, который остаётся сигнал на одного ждать несколько сигналов

Атомарно

правка без гонки прибавить единицу вычесть единицу прибавить число подменить значение подменить если совпало чтение и запись без кеша прочитать свежее записать сразу

Параллельно

гонять пачкой параллельный счётчик параллельный обход обход с ожиданием запустить вместе запрос на нескольких ядрах

Потокобезопасные наборы

таблица без внешней блокировки записать если нет убрать если есть сменить если совпало записать или обновить взять или создать значение по ключу очередь без блокировки поставить снять если есть глянуть если есть стопка без блокировки положить снять если есть мешок без порядка положить забрать если есть

Канал

очередь между задачами канал без предела канал с пределом писать в канал записать и подождать записать если есть место больше не пишем читать из канала прочитать и подождать прочитать если есть читать всё когда канал закрыт

Поток

отдельный поток запустить дождаться конца уснуть этот поток номер потока фоновый поток общая очередь работ поставить работу

Сериализация

объект и JSON объект в JSON JSON в объект объект в байты правила сериализации имена полей регистр имён не важен с отступами что пропускать как читать числа циклы ссылок предел вложенности хвостовая запятая комментарии в JSON слушаться null свои преобразователи готовые стили имён когда пропускать поле свой преобразователь какие символы экранировать

Атрибуты

имя поля в JSON не писать поле включить непубличное поле обязательно лишние поля сюда генератор на компиляции

Дерево

разобрать документ разобрать текст корень закрыть документ узел только читать какого вида узел взять строку взять int взять double взять bool дочернее по имени дочернее если есть обойти массив обойти поля исходный кусок узел, который можно менять узел в текст объект JSON добавить поле массив JSON добавить элемент скаляр JSON читать байты по шагам писать байты по шагам

Исключения

ошибка разбора JSON

Клиент

клиент HTTP скачать текст запрос GET скачать байты скачать потоком запрос POST запрос PUT запрос DELETE отправить запрос отменить висящие предел ожидания база адреса заголовки по умолчанию закрыть клиент клиент из фабрики пул соединений

Запрос и ответ

исходящий запрос глагол адрес тело запроса заголовки запроса пришедший ответ код ответа код успешный текст кода тело ответа заголовки ответа сбой если не успех глаголы HTTP коды ответа

Тело

тело сообщения тело текстом тело байтами тело потоком заголовки тела тело из строки тело из байт тело из потока тело формы форма с файлами тело из объекта в JSON

Адрес

адрес разобрать адрес адрес целиком схема хост порт путь строка запроса экранировать кусок снять экраны собрать адрес по частям

Исключения

сбой HTTP-запроса кривой адрес

Хеш

хеш SHA-256 посчитать хеш хеш SHA-512 хеш MD5 хеш с ключом посчитать HMAC хеш по кускам

Случайные байты

криптослучайные байты заполнить байты случайное целое заполнить отрезок

Шифр и пароль

симметричный шифр ключ начальный вектор шифровать расшифровать шифр поверх потока ключ из пароля вывести ключ

Исключения

сбой криптографии

Основа

пометить объявление база атрибутов где атрибут можно ставить можно несколько раз переходит наследникам пометить устаревшим enum как набор битов вызов только если символ задан вызвать при загрузке модуля пометить опытным кого выбирать при споре свой тип в скобках набора

Вызывающий

имя вызывающего файл вызывающего строка вызывающего текст аргумента

Обязательность и null

член обязателен конструктор заполняет обязательные результат бывает null результат не null не null при условии null при условии не null если аргумент не null токен в итератор

Тип

описание типа короткое имя имя с пространством пространство сборка типа базовый тип это класс это значение это контракт это перечисление это обобщение аргументы типа закрыть обобщение можно ли присвоить объект этого типа контракты типа

Члены

свойства типа методы типа поля типа конструкторы типа атрибуты члена какие члены искать описание свойства прочитать свойство записать свойство тип свойства описание метода вызвать метод тип результата параметры метода описание поля прочитать поле записать поле описание конструктора вызвать конструктор описание параметра создать по типу создать экземпляр

Сборка

сборка текущая сборка типы сборки путь сборки имя сборки

Окружение

сведения о процессе прочитать переменную записать переменную все переменные завершить процесс сколько ядер перевод строки системы текущая папка миллисекунды с загрузки версия среды процесс 64-битный системная папка имена системных папок номер версии разобрать версию

Контекст и процесс

контекст приложения папка приложения целевой фреймворк чужой процесс запустить процесс дождаться конца код выхода остановить процесс его вывод
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить