Перейти к основному содержимому

· 7 мин. чтения

1. Обзор

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

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

2. Преобразование между байтами и шестнадцатеричными числами

· 10 мин. чтения

1. Обзор

В этом уроке мы собираемся изучить шифр Цезаря, метод шифрования, который сдвигает буквы сообщения, чтобы создать другое, менее читаемое.

Прежде всего, мы рассмотрим метод шифрования и посмотрим, как его реализовать на Java.

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

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

2. Шифр Цезаря

· 4 мин. чтения
  1. Проверка гласной с помощью метода indexOf

1. Обзор

При обработке символов из строки мы можем захотеть классифицировать их в зависимости от того, принадлежат ли они к определенной группе. Например, символы английского алфавита — это либо гласные, либо согласные.

В этом уроке мы рассмотрим несколько методов проверки того, является ли символ гласным. Мы могли бы легко распространить эти методы на другие группы символов.

2. Проверка гласных с помощью метода indexOf

· 4 мин. чтения

1. Обзор

В этом руководстве мы увидим различные способы проверки того, отсортирован ли список в Java .

2. Итеративный подход

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

Список может быть отсортирован в естественном порядке или в пользовательском порядке. Мы рассмотрим оба этих случая, используя интерфейсы Comparable и Comparator .

· 7 мин. чтения

1. Обзор

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

Имейте в виду, что существует множество различных подходов к решению этих проблем. Мы постарались сделать представленные решения простыми для понимания.

2. Создание перестановок

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

· 4 мин. чтения

1. Введение

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

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

2. Римские цифры

В римской системе у нас есть 7 символов, которые представляют числа :

· 5 мин. чтения

1. Введение

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

В этой статье мы будем использовать пакет java.util.regex , чтобы определить, содержит ли данная строка допустимую дату или нет.

Введение в регулярные выражения см. в нашем Руководстве по API регулярных выражений Java .

2. Обзор формата даты

· 5 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим поиск в глубину в Java.

Поиск в глубину (DFS) — это алгоритм обхода, используемый как для структур данных Tree, так и для Graph . Поиск в глубину углубляется в каждую ветвь, прежде чем переходить к изучению другой ветви .

В следующих разделах мы сначала рассмотрим реализацию дерева, а затем графа.

Чтобы узнать, как реализовать эти структуры в Java, ознакомьтесь с нашими предыдущими руководствами по двоичному дереву и графику .

2. Поиск в глубину дерева

· 3 мин. чтения

1. Обзор

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

2. Что такое доменное имя?

Проще говоря, доменное имя представляет собой строку, указывающую на IP-адрес. Он является частью унифицированного указателя ресурсов (URL). Используя доменное имя, пользователи могут получить доступ к определенному веб-сайту через клиентское программное обеспечение.

Доменное имя обычно состоит из двух или трех частей, разделенных точкой.

· 5 мин. чтения

1. Обзор

В этом руководстве мы рассмотрим конечные автоматы и то, как их можно реализовать в Java с помощью Enums.

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

2. Перечисления Java

Java Enum — это особый тип класса, определяющий список констант. Это позволяет реализовать типобезопасную реализацию и сделать код более читаемым .