#java #oop
#java #ооп
Вопрос:
Итак, для моего задания было дано 3 разных предложения.
Например;
- «Автомобиль белый»
- «Кошка черная»
- «Небо голубое»
Эти предложения находятся в ArrayList с именем sList
и заданный вопрос заключается в том, чтобы отделить или обозначить каждое слово с помощью разделителя white blank / space и сохранить каждую работу в новом ArrayList под названием wordList .
для разделения каждого слова я понял это, используя
for(int i = 0; i < sList.size(); i ){
String sentence = sList.get(i);
String str[] = sentence.split(" ");
}
но у меня возникли проблемы с сохранением каждого слова в новом ArrayList
Комментарии:
1. Какие именно проблемы у вас возникли с новыми списками массивов?
2. Давайте разберем проблему. 1-й у вас разные предложения. 2-е — Каждое предложение состоит из слов. 3-й — вам нужен массив, равный размеру совокупной длины каждого предложения, поэтому вам нужно сложить общее количество слов. 4-й вы должны перебирать каждое предложение и разделять его на основе пустого. 5-й — вы должны хранить отдельные слова в массиве в пункте 3.
Ответ №1:
Если вам просто нужно поместить все слова из этих строк в массив с именем wordList
, тогда вы сначала создадите этот список перед for
циклом следующим образом:
ArrayList<String> wordList = new ArrayList<>();
после того, как вы собрали свои разделенные слова String str[]
, вы можете выполнить итерацию по нему и добавить слово за словом wordList
следующим образом:
String str[] = sentence.split(" ");
for(String word : str) {
wordList.add(word);
}
Итак, чтобы завершить его, ваш код должен выглядеть следующим образом:
ArrayList<String> sList = new ArrayList<>();
sList.add("The car is white");
sList.add("The cat is black");
sList.add("The sky is blue");
ArrayList<String> wordList = new ArrayList<>();
for(int i = 0; i < sList.size(); i ){
String sentence = sList.get(i);
String str[] = sentence.split(" ");
for(String word : str) {
wordList.add(word);
}
}
Если вы напечатаете wordList
, вы получите:
[The, car, is, white, The, cat, is, black, The, sky, is, blue]
Комментарии:
1. Оу, я вижу, так что в моем кодировании я на самом деле уже собрал слова в String str[] = sentence.split[]; ? И цикл for заключается в вставке слов в arraylist. Большое вам спасибо.
2. @AshreefulAmni Да,
str[]
это массив с предложениями изsList
splitted up. Если вы поместитеSystem.out.println(Arrays.toString(str));
подString str[] = sentence.split(" ");
вы можете распечатать эти массивы и увидеть, что вы получаете массив[The, car, is, white]
[The, cat, is, black]
и т.д.