Galera, tenho um código que lê uma String e mostra a quantidade de consoantes (não repetidas) na String.
Só que eu tento fazê-lo fazer a mesma coisa com vogais substituindo apenas a parte que exclui as vogais por exclusão das consoantes e não dá certo. Alguém pode me ajudar?
Código das consoantes:
import java.util.;
import java.lang.;
import java.io.*;
public class questaoOrig {
public static void main(String[] args) throws java.lang.Exception { Map<String, Integer> consoantes = new HashMap<>();
Scanner in = new Scanner(System.in);
System.out.println("Insira a frase"); String frase = in.nextLine();
//exclusão das vogais String cfras = frase.replaceAll("[AEIOUaeiou ]", "");
for (char letra : cfras.trim().toCharArray()) {
if (consoantes.get(String.valueOf(letra)) == null) { consoantes.put(String.valueOf(letra), 1); } else { consoantes.replace(String.valueOf(letra), consoantes.get(String.valueOf(letra)) + 1); }
} System.out.println("Quantidade de consoantes: " + consoantes.size()); }
}
Código modificado tentando fazer o mesmo para vogais:
import java.util.*;
import java.lang.*;
import java.io.*;
public class questaoModf {
public static void main(String[] args) throws java.lang.Exception {
Map<String, Integer> vogais = new HashMap<>();
Scanner in = new Scanner(System.in);
System.out.println("Insira a frase");
String frase = in.nextLine();
//exclusão das consoantes
String cfras = frase.replaceAll("[ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz]", "");
for (char letra : cfras.trim().toCharArray()) {
if (vogais.get(String.valueOf(letra)) == null) {
vogais.put(String.valueOf(letra), 1);
} else {
vogais.replace(String.valueOf(letra),
vogais.get(String.valueOf(letra)) + 1);
}
}
System.out.println("Quantidade de vogais: " + vogais.size());
}
}