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

143 записи с тегом "Java String"

Посмотреть все теги

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

1. Введение

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

Обратите внимание, что предоставленные алгоритмы — не лучший способ выполнения полнотекстового поиска в более сложных приложениях. Чтобы правильно выполнять полнотекстовый поиск, мы можем использовать Solr или ElasticSearch .

2. Алгоритмы

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

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

1. Обзор

В этом руководстве сравните способы поиска самой длинной подстроки уникальных букв с помощью Java. Например, самая длинная подстрока уникальных букв в «CODINGISAWESOME» — «NGISAWE».

2. Подход грубой силы

Начнем с наивного подхода. Для начала мы можем проверить каждую подстроку на наличие уникальных символов:

String getUniqueCharacterSubstringBruteForce(String input) {
String output = "";
for (int start = 0; start < input.length(); start++) {
Set<Character> visited = new HashSet<>();
int end = start;
for (; end < input.length(); end++) {
char currChar = input.charAt(end);
if (visited.contains(currChar)) {
break;
} else {
visited.add(currChar);
}
}
if (output.length() < end - start + 1) {
output = input.substring(start, end);
}
}
return output;
}

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

1. Введение

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

Мы рассмотрим распространенные пограничные случаи, включая пустые String и недопустимые числа.

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

2. Описание проблемы

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

1. Обзор

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

Вот простой пример: « Фермер Джек понял, что большие желтые одеяла стоят дорого. ” – который на самом деле содержит все буквы алфавита.

Мы обсудим три подхода.

Во-первых, мы смоделируем алгоритм, используя императивный подход. Затем будут использоваться регулярные выражения. И, наконец, мы воспользуемся более декларативным подходом, используя Java 8.

Кроме того, мы обсудим большую сложность используемых подходов.

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

1. Введение

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

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

2. Основы

Вселенная Java предлагает довольно много библиотек ( например, java.lang.String , Guava и Apache Commons), облегчающих разбиение строк в простых и довольно сложных случаях. Кроме того, многофункциональные регулярные выражения обеспечивают дополнительную гибкость при разделении задач, связанных с сопоставлением определенного шаблона.

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

1. Обзор

Camel case и title case обычно используются в качестве идентификаторов для полей и типов. Мы можем захотеть преобразовать текст в этот формат.

Этого можно добиться либо написанием собственного кода, либо использованием сторонних библиотек.

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

2. Java-решения

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

1. Обзор

Когда мы получаем размер файла в Java , обычно мы получаем значение в байтах. Однако, как только файл становится достаточно большим, например, 123456789 байт, просмотр длины, выраженной в байтах, становится проблемой для нас, пытающихся понять, насколько велик файл.

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

2. Введение в проблему

Как мы говорили ранее, когда размер файла в байтах велик, человеку нелегко его понять. Поэтому, когда мы представляем объем данных людям, мы часто используем правильный двоичный префикс , такой как КБ, МБ, ГБ и т. д., чтобы сделать большое число удобочитаемым для человека. Например, «270 ГБ» гораздо легче понять, чем «282341192 байта».

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

1. Обзор

При работе с необработанными значениями JSON в Java иногда возникает необходимость проверить, допустимы они или нет. В этом нам могут помочь несколько библиотек: Gson , JSON API и Jackson . Каждый инструмент имеет свои преимущества и ограничения.

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

2. Проверка с помощью JSON API

Самая легкая и простая библиотека — JSON API.

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

1. Обзор

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

Мы можем добиться этого с помощью vanilla Java и служебных классов Java из часто используемых библиотек.

2. Преобразовать массив в строку

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

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

1. Введение

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

2. Стандартная функция toString() в списке

Один из самых простых способов — вызвать метод toString() для списка :

@Test
public void whenListToString_thenPrintDefault() {
List<Integer> intLIst = Arrays.asList(1, 2, 3);

System.out.println(intLIst);
}