Библиотека задач по C# | тесты, код, задания
Ir al canal en Telegram
Задачи и тесты по C# для тренировки и обучения. Учиться у нас: https://clc.to/3e1SCw По рекламе: @tproger_sales_bot Для обратной связи: @proglibrary_feeedback_bot Наши каналы: https://t.me/proglibrary/9197
Mostrar más4 878
Suscriptores
-324 horas
-197 días
-5830 días
Archivo de publicaciones
Что такое Boxing и Unboxing?
Упаковка представляет собой процесс неявный преобразования типа значения (хранящегося в стеке) в тип object. Когда тип значения упаковывается средой CLR, она создает оболочку значения внутри System.Object и сохраняет ее в управляемой куче.
Обратная операция распаковки осуществляется явным преобразованием object в тип значения. Если упакованный объект не соответствует требуемому типу, то выбрасывается исключение InvalidCastException.
В каком из приведенных вариантов правильно описано объявление типа перечисления?
Вставка
Для вставки одной строки в другую применяется функция Insert.
Первым параметром в функции Insert является индекс, по которому надо вставлять подстроку, а второй параметр — собственно подстрока.
Dispose(), Finalize() — что это за методы, как используются в .NET?
Используются для освобождения ресурсов. Применяя метод Dispose, вы должны обеспечить неявную очистку методом Finalize. Если программисту не удалось вызвать метод Dispose, использование метода Finalize предотвращает постоянную утечку ресурсов.
⚡️Самые полезные каналы по C# в одной папке
В ней:
➖канал для подготовки к собеседованиям
➖основной канал
➖книги по C#
➖лучшие вакансии из сферы
➖и наш чат, в котором можно общаться и задавать вопросы
Добавляйте 👉 тык сюда
Смена регистра
Для приведения строки к верхнему и нижнему регистру используются соответственно функции ToUpper() и ToLower().
Генерируем случайные числа
Для генерации случайных чисел мы сначала создаем объект типа «Random», потом вызываем его метод «Next», в результате чего и получаем случайное число. Если мы вызовем метод «Next» несколько раз, то получим разные числа.
Узнаем сколько букв содержится в тексте файла
В этом коде мы считываем текст из файла, затем применяем регулярное выражение для удаления всех символов, кроме букв (как на кириллице, так и на латинице), и подсчитываем количество букв в полученной строке.
Узнаем размер переданного файла
Программа запрашивает у пользователя путь к файлу, а затем пытается получить информацию о файле, используя класс FileInfo. Если файл существует, то выводится его размер в байтах, килобайтах и мегабайтах. Если файл не найден или возникла ошибка при получении информации о файле, выводится соответствующее сообщение.
Объединение строки в C#
StringBuilder.Append можно использовать для эффективного добавления нескольких строк. Это предпочтительное решение по сравнению с + оператор для объединения более трех строк.
Возврат значения из try-finally
Можно смело делать воврат из try-finally блока. При этом, компилятор закэширует возвращаемое значение, и оно будет возвращено только после исполнения finally-блока.
Какова алгоритмическая сложность для операций чтения и записи для коллекции Dictionary?
Чтение очень быстрое, потому что используются хэш-таблицы и сложность в этом случае стремится к O(1).
Запись проходит тоже очень быстро (O(1)), в том случае если .Count меньше емкости, если же больше, то скорость стремится к O(n).
Метод Subtract
Метод используется для вычитания дат.
Синтаксис:
Subtract(DateTime date).
Форматирование дат и времени
Не всегда удобно использование встроенных форматов даты и времени. Иногда бывает необходимо задать собственную форму отображения объекта DateTime.
Сокращенная запись методов
Если метод в качестве тела определяет только одну инструкцию, то мы можем сократить определение метода. Например, допустим у нас есть метод(см «было» на картинке).
Мы можем его сократить следующим образом(смотреть «стало» на картинке).
То есть после списка параметров ставится оператор =>, после которого идет выполняемая инструкция.
Объясните, что такое фиксированный временной шаг в Unity3D? Почему настройка фиксированного времени влияет на скорость игры?
Функция Fixed Timestep помогает установить обновления системы через фиксированный интервал времени. Механизм, подобный очереди, будет управлять всеми событиями в реальном времени, которые накапливаются между временными эпохами.
Если частота кадров упадет ниже некоторого порогового значения, установленного для фиксированного временного шага, это может повлиять на скорость игры.
Чем отличаются друг от друга классы String и StringBuilder?
Объект класса String представляет собой неизменяемую строку.
Когда выполняется какой-нибудь метод класса String, система создает новый объект в памяти с выделением ему достаточного места.
Объект класса StringBuilder представляет собой динамическую строку.
При создании строки StringBuilder выделяет памяти больше, чем необходимо этой строке, а при добавлении к ней каких-либо элементов строка не пересоздается заново.
В том случае если выделенной памяти не будет хватать для добавления новых элементов, то емкость объекта будет увеличена.
