Добрый день.
Все работает, но во 2 строке не должно быть пробелов. Пытаюсь удалить их с помощью итератора, но ничего не получается, и вывод все равно с пробелами во 2 строке.
Помогите, пожалуйста.
package com.javarush.task.task09.task0923;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.*;
/*
Гласные и согласные
*/
public class Solution {
public static char[] vowels = new char[]{'а', 'я', 'у', 'ю', 'и', 'ы', 'э', 'е', 'о', 'ё'};
public static void main(String[] args) throws Exception {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String s = reader.readLine();
char[] letter = s.toCharArray();
ArrayList<Character> vowels = new ArrayList<>();
ArrayList<Character> NotVowels = new ArrayList<>();
for (int i = 0; i < letter.length; i++) {
if (isVowel(letter[i]))
vowels.add(letter[i]);
else {
NotVowels.add(letter[i]);
}
}
Iterator<Character> iterator = NotVowels.iterator();
while (iterator.hasNext()) {
Character c = iterator.next();
if (c.equals(""))
iterator.remove();
}
for (char i : vowels) {
System.out.print(i + " ");
}
System.out.println();
for (char i : NotVowels) {
System.out.print(i + " ");
}
}
// метод проверяет, гласная ли буква
public static boolean isVowel(char c) {
c = Character.toLowerCase(c); // приводим символ в нижний регистр - от заглавных к строчным буквам
for (char d : vowels) // ищем среди массива гласных
{
if (c == d)
return true;
}
return false;
}
}