BAEL-5562 Check if character is vowel (#12221)
This commit is contained in:
parent
ee9b5a41fb
commit
7e3cddafaa
|
@ -30,6 +30,12 @@
|
|||
<artifactId>commons-lang3</artifactId>
|
||||
<version>${apache-commons-lang3.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.assertj</groupId>
|
||||
<artifactId>assertj-core</artifactId>
|
||||
<version>${assertj.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
package com.baeldung.checkvowels;
|
||||
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
public class CheckVowels {
|
||||
private static final String VOWELS = "aeiouAEIOU";
|
||||
private static final Pattern VOWELS_PATTERN = Pattern.compile("[aeiou]", Pattern.CASE_INSENSITIVE);
|
||||
|
||||
public static boolean isInVowelsString(char c) {
|
||||
return VOWELS.indexOf(c) != -1;
|
||||
}
|
||||
|
||||
public static boolean isInVowelsString(String c) {
|
||||
return VOWELS.contains(c);
|
||||
}
|
||||
|
||||
public static boolean isVowelBySwitch(char c) {
|
||||
switch (c) {
|
||||
case 'a':
|
||||
case 'e':
|
||||
case 'i':
|
||||
case 'o':
|
||||
case 'u':
|
||||
case 'A':
|
||||
case 'E':
|
||||
case 'I':
|
||||
case 'O':
|
||||
case 'U':
|
||||
return true;
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static boolean isVowelByRegex(String c) {
|
||||
return VOWELS_PATTERN.matcher(c).matches();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,51 @@
|
|||
package com.baeldung.checkvowels;
|
||||
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static com.baeldung.checkvowels.CheckVowels.*;
|
||||
import static org.assertj.core.api.Assertions.*;
|
||||
|
||||
class CheckVowelsUnitTest {
|
||||
|
||||
@Test
|
||||
void givenAVowelCharacter_thenInVowelString() {
|
||||
assertThat(isInVowelsString('e')).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenAConsonantCharacter_thenNotInVowelString() {
|
||||
assertThat(isInVowelsString('z')).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenAVowelString_thenInVowelString() {
|
||||
assertThat(isInVowelsString("e")).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenAConsonantString_thenNotInVowelString() {
|
||||
assertThat(isInVowelsString("z")).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenAVowelCharacter_thenInVowelSwitch() {
|
||||
assertThat(isVowelBySwitch('e')).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenAConsonantCharacter_thenNotInVowelSwitch() {
|
||||
assertThat(isVowelBySwitch('z')).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenAVowelString_thenInVowelPattern() {
|
||||
assertThat(isVowelByRegex("e")).isTrue();
|
||||
assertThat(isVowelByRegex("E")).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
void givenAVowelCharacter_thenInVowelPattern() {
|
||||
assertThat(isVowelByRegex(Character.toString('e'))).isTrue();
|
||||
assertThat(isVowelByRegex("E")).isTrue();
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue