Уже и мягкий с твердым знаком добавил и дополнительно пробелы на проверку (знаю, что не надо), а каменный цветок не выходит...
package com.javarush.task.task09.task0923;
/*
Гласные и согласные
*/
import java.util.ArrayList;
import java.util.Scanner;
public class Solution {
public static char[] vowels = new char[]{'а', 'я', 'у', 'ю', 'и', 'ы', 'э', 'е', 'о', 'ё'};
public static void main(String[] args) throws Exception {
//напишите тут ваш код
Scanner scan = new Scanner (System.in);
String s1 = scan.nextLine();
String s2=" ";
String s=s1.replace(" ","");
char[] inter = s.toCharArray();
ArrayList<Character> vowel = new ArrayList<>();
ArrayList<Character> notvowel = new ArrayList<>();
for (int i =0; i<inter.length; i++){
if (isVowel(inter[i])) {
//inter[i] = Character.toLowerCase(inter[i]);
vowel.add(inter[i]);
} else if (inter[i]=='Ъ' || inter[i]=='ъ' || inter[i]=='Ь' || inter[i]=='ь' || inter[i]==' '){
continue;
}
else{
inter[i] = Character.toLowerCase(inter[i]);
notvowel.add(inter[i]);
}
}
for (Character ch: vowel){
System.out.print(ch+s2);}
System.out.println();
for (Character ch: notvowel){
System.out.print(ch+s2);}
}
// метод проверяет, гласная ли буква
public static boolean isVowel(char c) {
c = Character.toLowerCase(c); // приводим символ в нижний регистр - от заглавных к строчным буквам
for (char d : vowels) { // ищем среди массива гласных
if (c == d) {
return true;
}
}
return false;
}
}