Метод replaceAll()
Заменяет каждую подстроку данной строки, которая соответствует заданному регулярному выражению, с данной заменой, другими словами — метод позволяет заменить слово в строке.
Параметры
#java
Подписывайтесь на канал 👉@cod_academy
Заменяет каждую подстроку данной строки, которая соответствует заданному регулярному выражению, с данной заменой, другими словами — метод позволяет заменить слово в строке.
Параметры
regex — регулярное выражение, которому данная строка должна соответствовать; replacement — строка, которая заменит найденное выражение.#java
Подписывайтесь на канал 👉@cod_academy
👍2
Алгоритмы all_of, any_of и none_of
Начиная с C ++ 11, в STL C ++ добавляются некоторые новые интересные алгоритмы. Эти алгоритмы работают с массивом и полезны для экономии времени во время кодирования и, следовательно, также полезны в конкурентном программировании.
#cpp
Подписывайтесь на канал 👉@cod_academy
Начиная с C ++ 11, в STL C ++ добавляются некоторые новые интересные алгоритмы. Эти алгоритмы работают с массивом и полезны для экономии времени во время кодирования и, следовательно, также полезны в конкурентном программировании.
#cpp
Подписывайтесь на канал 👉@cod_academy
👍1
Декораторы
Очень важная тема, с помощью декорирования можно писать очень удобные логи или существенно расширять функции.
Многие библиотеки работают с использованием декораторов: Flask и aiogram хорошие тому примеры.
Мы показываем лишь простой пример, возможности куда шире. Позже покажем пример использования с упоминаемыми выше библиотеками.
#python
Подписывайтесь на канал 👉@cod_academy
Очень важная тема, с помощью декорирования можно писать очень удобные логи или существенно расширять функции.
Многие библиотеки работают с использованием декораторов: Flask и aiogram хорошие тому примеры.
Мы показываем лишь простой пример, возможности куда шире. Позже покажем пример использования с упоминаемыми выше библиотеками.
#python
Подписывайтесь на канал 👉@cod_academy
👍2👌1
⚡️ Младший HR-аналитик
✅ Гринатом в поиске младшего HR-аналитика в свою команду. На старте важно умение владеть Excel на уровне ВПР, сводных таблиц и условного форматирования.
✅ Предстоит формировать кадровые статистические отчеты по предприятиям Росатома, проводить HR анализ и работать с большими объемами данных.
☎️ Откликнуться на вакансию
✅ Гринатом в поиске младшего HR-аналитика в свою команду. На старте важно умение владеть Excel на уровне ВПР, сводных таблиц и условного форматирования.
✅ Предстоит формировать кадровые статистические отчеты по предприятиям Росатома, проводить HR анализ и работать с большими объемами данных.
☎️ Откликнуться на вакансию
nn.hh.ru
Вакансия Специалист по формированию кадровой отчетности в Нижнем Новгороде, работа в компании Гринатом. Бухгалтерия и Кадры (вакансия…
Зарплата: от 47000 ₽ за месяц. Нижний Новгород. Требуемый опыт: не требуется. Полная. Дата публикации: 17.01.2025.
Вывод параметра шаблона класса
Довольно странное название функции, да? Её суть в том, что с C++17 компилятор может сам определять типы аргументов конструкторов стандартных классов. Раньше же это работало лишь для функций.
Для того, чтобы осознать удобство этой функции, нужно быть знакомыми с конструкторами классов в C++.
#cpp
Подписывайтесь на канал 👉@cod_academy
Довольно странное название функции, да? Её суть в том, что с C++17 компилятор может сам определять типы аргументов конструкторов стандартных классов. Раньше же это работало лишь для функций.
Для того, чтобы осознать удобство этой функции, нужно быть знакомыми с конструкторами классов в C++.
#cpp
Подписывайтесь на канал 👉@cod_academy
👍2
😮💨Устал от постоянной рутины на работе? Хочется свободный график, удаленку и интересные задачи?
⚡️Представь, что ты освоил востребованную профессию QA Engineer, работаешь в команде IT-экспертов, решаешь увлекательные задачи и строишь карьеру с высоким доходом.
🚀На открытом уроке 26 декабря в 20:00 мск мы покажем, как твой текущий опыт можно применить в тестирование ПО. Узнай, какие навыки у тебя уже есть, и получи полезные материалы для успешного старта в новой профессии.
🔗Запишись и сделай первый шаг к переменам: https://vk.cc/cGjA7k
⚡️Представь, что ты освоил востребованную профессию QA Engineer, работаешь в команде IT-экспертов, решаешь увлекательные задачи и строишь карьеру с высоким доходом.
🚀На открытом уроке 26 декабря в 20:00 мск мы покажем, как твой текущий опыт можно применить в тестирование ПО. Узнай, какие навыки у тебя уже есть, и получи полезные материалы для успешного старта в новой профессии.
🔗Запишись и сделай первый шаг к переменам: https://vk.cc/cGjA7k
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576Функция strrchr()
В C++ strrchr() - это предопределенная функция, используемая для обработки строк. Эта функция возвращает указатель на всю строку после последнего появления заданного символа. Символ, последнее вхождение которого мы хотим найти, передается в качестве второго аргумента функции, а строка, в которой мы должны найти этот символ, передается в качестве первого аргумента функции.
В примере кода на картинке мы используем функцию для того, чтобы найти порядковый номер символа в заданной строке.
#cpp
Подписывайтесь на канал 👉@cod_academy
В C++ strrchr() - это предопределенная функция, используемая для обработки строк. Эта функция возвращает указатель на всю строку после последнего появления заданного символа. Символ, последнее вхождение которого мы хотим найти, передается в качестве второго аргумента функции, а строка, в которой мы должны найти этот символ, передается в качестве первого аргумента функции.
В примере кода на картинке мы используем функцию для того, чтобы найти порядковый номер символа в заданной строке.
#cpp
Подписывайтесь на канал 👉@cod_academy
👍1
Могут ли статичные функции быть виртуальными в С++?
В C++ статическая функция-член класса не может быть виртуальной. Виртуальные функции вызываются, когда у вас есть указатель или ссылка на экземпляр класса. Статические функции не привязаны к экземпляру класса, но они привязаны к самому классу. C++ не имеет указателей на класс, поэтому нет сценария, в котором вы могли бы виртуально вызвать статическую функцию.
Например, программа с картинки в примере 1 выдаст ошибку во время компиляции.
Кроме того, статическая функция-член класса не может иметь одновременно идентификаторы const и volatile. Код из примера 2 тоже не скомпилируется.
#cpp
Подписывайтесь на канал 👉@cod_academy
В C++ статическая функция-член класса не может быть виртуальной. Виртуальные функции вызываются, когда у вас есть указатель или ссылка на экземпляр класса. Статические функции не привязаны к экземпляру класса, но они привязаны к самому классу. C++ не имеет указателей на класс, поэтому нет сценария, в котором вы могли бы виртуально вызвать статическую функцию.
Например, программа с картинки в примере 1 выдаст ошибку во время компиляции.
Кроме того, статическая функция-член класса не может иметь одновременно идентификаторы const и volatile. Код из примера 2 тоже не скомпилируется.
#cpp
Подписывайтесь на канал 👉@cod_academy
👍3
Методы start и end
Выше представлен пример, в котором производится подсчет количества раз, когда в строке ввода встречается слово "кот".
Как видим, в данном примере используются границы слов с целью удостоверения в том, что буквы "c" "a" "t" не являются частью другого слова. Также отображаются определенные полезные сведения касательно нахождения совпадения в вводимой строке.
Метод start производит возврат начального индекса в последовательности, захваченной в данной группе в ходе предыдущей операции поиска совпадений, а end производит возврат индекса к последнему совпавшему символу, плюс один.
#java
Подписывайтесь на канал 👉@cod_academy
Выше представлен пример, в котором производится подсчет количества раз, когда в строке ввода встречается слово "кот".
Как видим, в данном примере используются границы слов с целью удостоверения в том, что буквы "c" "a" "t" не являются частью другого слова. Также отображаются определенные полезные сведения касательно нахождения совпадения в вводимой строке.
Метод start производит возврат начального индекса в последовательности, захваченной в данной группе в ходе предыдущей операции поиска совпадений, а end производит возврат индекса к последнему совпавшему символу, плюс один.
#java
Подписывайтесь на канал 👉@cod_academy
👍1
Как удалить элемент из словаря в python по ключу?
Вы можете использовать del <Список>["<Ключ>"]
# Вывод : {'The Mist': 13, '11/22/63': 17, 'The Green Mile': 14, 'Fairy Tale': 10, 'End of Watch': 18}
#python
Подписывайтесь на канал 👉@cod_academy
Вы можете использовать del <Список>["<Ключ>"]
costs = {
"The Mist" : 13,
"Mile 81" : 12,
"11/22/63" : 17,
"The Green Mile" : 14,
"Fairy Tale" : 10,
"End of Watch" : 18
}
del costs["Mile 81"]
print(costs)# Вывод : {'The Mist': 13, '11/22/63': 17, 'The Green Mile': 14, 'Fairy Tale': 10, 'End of Watch': 18}
#python
Подписывайтесь на канал 👉@cod_academy
🔥1
Алгоритм reverse_copy
Алгоритм копирует элементы из заданного диапазона, но в обратном порядке.
Принимает три параметра. Первые два параметра — это диапазон копируемых элементов, а третий параметр — начальная точка, из которой элементы копируются в обратном порядке.
#cpp
Подписывайтесь на канал 👉@cod_academy
Алгоритм копирует элементы из заданного диапазона, но в обратном порядке.
Принимает три параметра. Первые два параметра — это диапазон копируемых элементов, а третий параметр — начальная точка, из которой элементы копируются в обратном порядке.
#cpp
Подписывайтесь на канал 👉@cod_academy
👍4
Что такое «пул строк»?
Пул строк – это набор строк, хранящийся в Heap.
• Пул строк возможен благодаря неизменяемости строк в Java и реализации идеи интернирования строк;
• Пул строк помогает экономить память, но по этой же причине создание строки занимает больше времени;
• Когда для создания строки используются ", то сначала ищется строка в пуле с таким же значением, если находится, то просто возвращается ссылка, иначе создается новая строка в пуле, а затем возвращается ссылка на неё;
• При использовании оператора new создаётся новый объект String. Затем при помощи метода intern() эту строку можно поместить в пул или же получить из пула ссылку на другой объект String с таким же значением;
• Пул строк является примером паттерна «Приспособленец» (Flyweight).
#java
Подписывайтесь на канал 👉@cod_academy
Пул строк – это набор строк, хранящийся в Heap.
• Пул строк возможен благодаря неизменяемости строк в Java и реализации идеи интернирования строк;
• Пул строк помогает экономить память, но по этой же причине создание строки занимает больше времени;
• Когда для создания строки используются ", то сначала ищется строка в пуле с таким же значением, если находится, то просто возвращается ссылка, иначе создается новая строка в пуле, а затем возвращается ссылка на неё;
• При использовании оператора new создаётся новый объект String. Затем при помощи метода intern() эту строку можно поместить в пул или же получить из пула ссылку на другой объект String с таким же значением;
• Пул строк является примером паттерна «Приспособленец» (Flyweight).
#java
Подписывайтесь на канал 👉@cod_academy
👍3
Функция
Синтаксис:
Возвращаемое значение:
Функция возвращает ненулевое значение, если
#cpp
Подписывайтесь на канал 👉@cod_academy
isalpha() в С++ проверяет, является ли данный символ буквой или нет.Синтаксис:
isalpha(int ch).Возвращаемое значение:
Функция возвращает ненулевое значение, если
ch – буква и ноль, если ch не буква.#cpp
Подписывайтесь на канал 👉@cod_academy
👍1
Регулярное выражение для электронной почты
Регулярные выражения представляют собой формальный язык поиска и редактирования подстрок в тексте. К примеру, надо провалидировать email адрес. Это будет проверка на наличие имени адреса, домена, символа
#java
Подписывайтесь на канал 👉@cod_academy
Регулярные выражения представляют собой формальный язык поиска и редактирования подстрок в тексте. К примеру, надо провалидировать email адрес. Это будет проверка на наличие имени адреса, домена, символа
@, точки и доменной зоны.#java
Подписывайтесь на канал 👉@cod_academy
🔥1
Могут ли статические функции быть виртуальными в C++?
В C++ статическая функция-член класса не может быть виртуальной.
Кроме того, статические функции-члены класса не могут быть
В примере кода приведены две функции, обе из которых не дадут программе скомпилироваться.
#cpp
Подписывайтесь на канал 👉@cod_academy
В C++ статическая функция-член класса не может быть виртуальной.
Кроме того, статические функции-члены класса не могут быть
const и volatile. В примере кода приведены две функции, обе из которых не дадут программе скомпилироваться.
#cpp
Подписывайтесь на канал 👉@cod_academy
Метод retainAll()
Используется для удаления всех элементов списка массива, не содержащихся в указанной коллекции, или для сохранения всех совпадающих элементов в текущем экземпляре
Подробнее про метод можно почитать здесь.
#java
Подписывайтесь на канал 👉@cod_academy
Используется для удаления всех элементов списка массива, не содержащихся в указанной коллекции, или для сохранения всех совпадающих элементов в текущем экземпляре
ArrayList, которые соответствуют всем элементам из списка Collection, переданного методу в качестве параметра.Подробнее про метод можно почитать здесь.
#java
Подписывайтесь на канал 👉@cod_academy
👍2
Распаковка последовательности при неизвестном числе элементов.
Для этого в Python есть оператор звездочки – расширенная операция распаковывания последовательности. Переменной со звездочкой присваивается часть списка, содержащая все неприсвоенные элементы, соответствующие этой позиции
#python
Подписывайтесь на канал 👉@cod_academy
Для этого в Python есть оператор звездочки – расширенная операция распаковывания последовательности. Переменной со звездочкой присваивается часть списка, содержащая все неприсвоенные элементы, соответствующие этой позиции
#python
Подписывайтесь на канал 👉@cod_academy
Алгоритм stable_partition
Упорядочивает последовательность, определенную параметрами
#cpp
Подписывайтесь на канал 👉@cod_academy
Упорядочивает последовательность, определенную параметрами
start и end, так, чтобы все элементы, для которых предикат возвращал true, предшествовали тем, для которых предикат возвращает false. Разметка стабильная. Это означает, что относительный порядок последовательности сохраняется.#cpp
Подписывайтесь на канал 👉@cod_academy
👍1
Управляем зависимостями и lifecycle во Flutter: yx_scope без генерации кода 📢
13 мая в 20:00 МСК в OTUS пройдёт открытый вебинар «DI и жизненный цикл модулей во Flutter на yx_scope».
Что разберём
— yx_scope vs Kiwi, Injector, Auto Injector, Scope — когда и почему выигрывает первое решение
— Безопасное DI на этапе компиляции — без глобальных синглтонов
— Гибкий lifecycle — как избежать утечек памяти при навигации
— Интеграция yx_scope в многомодульный интернет‑магазин (live‑код)
Спикер — Дмитрий Золотов, Flutter + Kotlin Developer в Yandex. 23 года опыта: full‑stack (Flutter/Python/Kotlin/Go/C++), DevOps, системное администрирование. Контрибьютор ReOpenLDAP, автор серий вебинаров по Kubernetes и кроссплатформенной разработке, приглашённый преподаватель в ИТМО.
Кому будет полезно
— Flutter‑инженерам, которые ищут чистую архитектуру без лишнего codegen
— Разработчикам, поддерживающим проекты с десятками экранов и активной навигацией
— Тем, кто хочет ускорить релизы, сохраняя контроль над памятью и зависимостями
После вебинара вы сможете
— Внедрять зависимости без шаблонов и ловить ошибки до запуска
— Управлять жизненным циклом компонентов так, чтобы память оставалась под контролем
— Масштабировать фичи, не переписывая DI‑слой
Участие бесплатное. Мест ограничено — бронируйте прямо сейчас.
→ Регистрируйтесь
Реклама. ООО «Отус онлайн‑образование», ОГРН 1177746618576
13 мая в 20:00 МСК в OTUS пройдёт открытый вебинар «DI и жизненный цикл модулей во Flutter на yx_scope».
Что разберём
— yx_scope vs Kiwi, Injector, Auto Injector, Scope — когда и почему выигрывает первое решение
— Безопасное DI на этапе компиляции — без глобальных синглтонов
— Гибкий lifecycle — как избежать утечек памяти при навигации
— Интеграция yx_scope в многомодульный интернет‑магазин (live‑код)
Спикер — Дмитрий Золотов, Flutter + Kotlin Developer в Yandex. 23 года опыта: full‑stack (Flutter/Python/Kotlin/Go/C++), DevOps, системное администрирование. Контрибьютор ReOpenLDAP, автор серий вебинаров по Kubernetes и кроссплатформенной разработке, приглашённый преподаватель в ИТМО.
Кому будет полезно
— Flutter‑инженерам, которые ищут чистую архитектуру без лишнего codegen
— Разработчикам, поддерживающим проекты с десятками экранов и активной навигацией
— Тем, кто хочет ускорить релизы, сохраняя контроль над памятью и зависимостями
После вебинара вы сможете
— Внедрять зависимости без шаблонов и ловить ошибки до запуска
— Управлять жизненным циклом компонентов так, чтобы память оставалась под контролем
— Масштабировать фичи, не переписывая DI‑слой
Участие бесплатное. Мест ограничено — бронируйте прямо сейчас.
→ Регистрируйтесь
Реклама. ООО «Отус онлайн‑образование», ОГРН 1177746618576
Инкапсуляция
Инкапсуляция в Java является механизмом обёртывания данных (переменных) и кода, работающего с данными (методами), в одно целое. В инкапсуляции переменные класса будут скрыты от других классов и доступ к ним может быть получен только с помощью метода их текущего класса. По-другому это называется скрытием данных.
Для достижения инкапсуляции в Java:
☕️ Объявите переменные класса как private.
☕️ Предоставьте public к методам установки и получения (сеттеру и геттеру) для изменения и просмотра значений переменных.
Преимущества инкапсуляции:
☕️ Поля класса можно сделать только для чтения или только для записи.
☕️ Класс может иметь полный контроль над тем, что хранится в его полях.
#java
Подписывайтесь на канал 👉@cod_academy
Инкапсуляция в Java является механизмом обёртывания данных (переменных) и кода, работающего с данными (методами), в одно целое. В инкапсуляции переменные класса будут скрыты от других классов и доступ к ним может быть получен только с помощью метода их текущего класса. По-другому это называется скрытием данных.
Для достижения инкапсуляции в Java:
☕️ Объявите переменные класса как private.
☕️ Предоставьте public к методам установки и получения (сеттеру и геттеру) для изменения и просмотра значений переменных.
Преимущества инкапсуляции:
☕️ Поля класса можно сделать только для чтения или только для записи.
☕️ Класс может иметь полный контроль над тем, что хранится в его полях.
#java
Подписывайтесь на канал 👉@cod_academy
👍2
Осталось 2 дня до вебинара! Успейте зарегистрироваться ⌛️
Управляем зависимостями и lifecycle во Flutter: yx_scope без генерации кода
🗓 13 мая, 20:00 МСК — открытый вебинар OTUS
Коротко о программе
— yx_scope vs Kiwi / Injector / Auto Injector / Scope — покажем, где выигрывает yx_scope
— Безопасное DI на этапе компиляции, никаких глобальных синглтонов
— Гибкий lifecycle: как избежать утечек памяти при навигации
— Live-код: интегрируем yx_scope в многомодульный интернет-магазин
Спикер — Дмитрий Золотов, Flutter + Kotlin Developer в Yandex, 23 года опыта full-stack и DevOps.
Кому зайдёт
— Flutter-инженерам, ищущим чистую архитектуру без лишнего codegen
— Разработчикам, поддерживающим большие проекты с активной навигацией
— Всем, кто хочет ускорить релизы и держать память под контролем
После вебинара вы сможете
— Внедрять зависимости без шаблонов и ловить ошибки до запуска
— Управлять жизненным циклом компонентов без утечек
— Масштабировать фичи без переписывания DI-слоя
Участие бесплатное, мест всё меньше.
→ Регистрируйтесь сейчас
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Управляем зависимостями и lifecycle во Flutter: yx_scope без генерации кода
🗓 13 мая, 20:00 МСК — открытый вебинар OTUS
Коротко о программе
— yx_scope vs Kiwi / Injector / Auto Injector / Scope — покажем, где выигрывает yx_scope
— Безопасное DI на этапе компиляции, никаких глобальных синглтонов
— Гибкий lifecycle: как избежать утечек памяти при навигации
— Live-код: интегрируем yx_scope в многомодульный интернет-магазин
Спикер — Дмитрий Золотов, Flutter + Kotlin Developer в Yandex, 23 года опыта full-stack и DevOps.
Кому зайдёт
— Flutter-инженерам, ищущим чистую архитектуру без лишнего codegen
— Разработчикам, поддерживающим большие проекты с активной навигацией
— Всем, кто хочет ускорить релизы и держать память под контролем
После вебинара вы сможете
— Внедрять зависимости без шаблонов и ловить ошибки до запуска
— Управлять жизненным циклом компонентов без утечек
— Масштабировать фичи без переписывания DI-слоя
Участие бесплатное, мест всё меньше.
→ Регистрируйтесь сейчас
Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576