Разделение строки с помощью метода 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));
}
}