私が作成しようとしているプログラムは次のとおりです。ユーザーが入力した文字から3文字の単語をフォーマットで作成するプログラムです。ユーザーが複数回使用しない限り、同じ文字を複数回使用することはできず、同じ単語を 2 回使用することはできません。
public class JavaApplication1 {
private static boolean Vowel (char c){
return (c == 'a' || c == 'e' || c == 'o' || c == 'u' || c == 'i');
}
public static void main(String[] args) {
char[] array = {'b', 'c','a', 'd', 'e', 'b'};
//List<Character> chars = new ArrayList<Character>();
String words = "";
for(int i = 0; i < array.length; i++){
if(Vowel(array[i]) == true){
continue;
}
for(int j = 0; j < array.length; j++){
if(Vowel(array[j]) == false){
continue;
}
for(int k = 0; k < array.length; k++){
if(Vowel(array[k]) == true){
continue;
}
if(array[k] == array[i]){
continue;
}
else{//here it should check if the word already exists
if(chars.contains((array[i] + array[j] + array[k]))){
continue;
}
else{
chars.add(array[i]);
chars.add(array[j]);
chars.add(array[k]);
}
}
}
}
}
System.out.print(chars.toString());
}
}
私が困っているのは...単語がすでに存在するかどうかを確認することです。配列リストの文字列、文字配列を使用してみました。(array[i]+array[j]+array[k]) は、何らかの理由で INT として認識されているようです。