Разделение строки с помощью метода split в Java
Массивы часто используются в компьютерных программах, можно сказать, что практически все программы содержат массивы разных типов. Структуры. Самый простой из них – это Структура смежный из которых все операции, кроме сложения, выполняются последовательно. В Удаление делается с помощью a Доступ  Прямой, но на должен Делайте Смещение  другие элементы.Подсчет слов в Канал character подразумевает поиск символа "пробела". Java облегчает нам жизнь, и именно здесь мы замечаем преимущество объектно-ориентированного, есть функция. Предопределенные split, divide на английском языке.
Метод split принимает в качестве входных данных регулярное выражение. Он разделяет это Канал в соответствии с заданным регулярным выражением и возвращает массив который содержит подстроки. Если выражение не соответствует Канал Искомый результирующий массив имеет только один элемент.
Если мы хотим разделить Канал Далее: I.am.a.programmer разделен по точки, мы должны написать split("\\." ) и not (split("." ) false ). Просто потому, что мы сказали, что метод split принимает регулярные выражения в качестве входных данных. Если у вас нет никаких знаний, просто поищите в интернете. Я даю вам ссылку напрямую:
Регулярные выражения в java с регулярным выражением
В нашем примере нам не нужны большие вещи. Мы хотим посчитать количество слов, разделенных единицей" космос" В Канал символов. Оно существует Это можно сделать двумя способами:
1- с помощью функции split
Метод split принимает входные данные в строка, которая будет обработана, и выводить ее должно возвращать Количество слов:int numberwords(Строка string)
Объявляем картину Строка[] слова; для хранения подстрок. Последний получает подстроки, найденные с помощью split:
words=string.split(" ");
Наконец, возвращаем длину таблицы words:
вернуться mots.length;
2- Без split
Этот метод кажется более длинным, но это не так необходимо Так как в Java уже есть предопределенная функция Split. Это плюс для тех, кто  Хочу Поезд.Объявляем счетчик слов и символ.
int n=0;
char c;
Затем мы читаем все иероглифы  Канал и мы проверяем, является ли один из них — пробел без учета пробелов в начале и конце предложения. Если да, увеличьте counter.
for(int i = 0; Я < string.length(); i++){
c = chain.charAt(i);
if(i!=0 & & i!=string.length()-1)
if(c==' ')
Н++;
}
Наконец, счетчик равен 0, если Канал input пуст и равен 1 если Выражение не соответствует Канал searched.
Если это так Супериор до 1 означает, что есть хотя бы один пробел.
if(n> 1)
Н++;
Пример
" Я программист "Мы добавляем 1, потому что считаем пробелы между ними. words( между каждыми двумя словами пробел).
public class WordNumberString {
//с предопределенной функцией split
static int numberwords(String string){
int n=0;
Строковые слова[];
//split разбивает строку на набор слов
//если есть пробел и помещает их в массив
words = string.split(" ");
возвращаем слова.длина;
}
//без предопределенной функции split
static int nombremots_naive(String string){
int n=0;
char c;
//просматриваем всю строку
for(int i = 0 ; i < string.length() ; i++){
//символ за символом
c = string.charAt(i);
//Избегаем подсчета пробелов
//в начале и в конце
//пример: "Я программист"
//если мы уберем этот тест, то количество слов
//будет равно 6, хотя у нас 4 слова.
if(i!=0 & & i!=string.length()-1)
if(c==' ')
n++;
}
//если строка не пустая
//мы добавляем 1, потому что мы
//считаем пробелы между
//слова, т.е. если у нас 3 пробела
//то у нас будет 4 слова
if(n> 1)
n++;
return n;
}
public static void main(String[] args) {
String string="Я программист";
System.out.println(nombremots_naive(string));
}
}