Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package fr.wildcodeschool.unittesting;
- import java.util.Arrays;
- import java.util.HashSet;
- import java.util.LinkedHashSet;
- import java.util.Set;
- import java.util.stream.Collectors;
- public class StringUtils {
- private static final String ALL_VOWELS = "aeiouyAEIOUY";
- /**
- * Renvoie la chaine formée par les voyelles d'une chaine de caractères
- * @return Chaine avec uniquement des voyelles
- */
- public static String vowels(String candidate) {
- if (candidate == null) {
- throw new IllegalArgumentException();
- }
- String noAccent = org.apache.commons.lang3.StringUtils.stripAccents(candidate);
- String vowels = "";
- char[] letters = noAccent.toCharArray();
- for (int i = 0; i < candidate.length(); i++) {
- if (ALL_VOWELS.indexOf(letters[i]) >= 0) {
- vowels += letters[i];
- }
- }
- return vowels;
- }
- public static String removeDuplicates(final String input) {
- Set<Character> knownCharacters = new HashSet<>(input.length(), 1.0f);
- StringBuilder noDuplicates = new StringBuilder(input.length());
- for(char character : input.toCharArray()){
- if(knownCharacters.add(character)){
- noDuplicates.append(character);
- }
- }
- return noDuplicates.toString();
- }
- public static String uniqueVowels(String candidate){
- if (candidate == null) {
- throw new IllegalArgumentException();
- }
- String noAccent = org.apache.commons.lang3.StringUtils.stripAccents(candidate);
- return vowels(removeDuplicates(noAccent));
- }
- }
Add Comment
Please, Sign In to add comment