나의 과제는 : 사용자가 입력 한 단어에 모음이 없으면 "ay"가 끝에 추가되고, 모음으로 시작하면 끝에 "yay"가 추가되고, 그렇지 않은 경우에는 "yy"가 끝에 추가됩니다. 이러한 조건 중 첫 번째 문자가 단어의 끝으로 이동하고 "ay"가 끝에 추가됩니다. 나는 마지막으로 일할 수있는 조건을 얻지 못하고있다. 예를 들어 "sad"라는 단어는 "adsay"를 출력해야하지만 대신 "saday"를 출력합니다. 즉, 다른 if 문을 읽고 받아 들인다는 의미입니다. 몇 가지 해결책을 찾아 보려고했지만 모든 것은 루프이며이 특정 할당을위한 루프는 피하고 싶습니다.루프를 사용하지 않고 문자열의 문자를 검색하려면 어떻게해야합니까?
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("Word: ");
String word = in.nextLine();
int length = word.length();
String word1 = "";
if (word.charAt(0) == 'a' || word.charAt(0) == 'e' || word.charAt(0) == 'i' || word.charAt(0) == 'o' || word.charAt(0) == 'u')
{
word1 = pigLatin(word);
System.out.println("Pig Latin: " + word1);
}
else if (word.indexOf("a") == -1 || word.indexOf("e") == -1 || word.indexOf("i") == -1 || word.indexOf("o") == -1 || word.indexOf("u") == -1)
{
word1 = pigLatin1(word);
System.out.println("Pig Latin: " + word1);
}
else
{
word1 = pigLatin2(word);
System.out.println("Pig Latin: " + word1);
}
}
static String pigLatin(String word)
{
String x = word + "yay";
return x;
}
static String pigLatin1(String word)
{
String x = word + "ay";
return x;
}
static String pigLatin2(String word)
{
char firstLetter = word.charAt(0);
String x = word.substring(1, word.length()) + firstLetter + "ay";
return x;
}
}
시작 :'경우 (hasNoVowel (워드)) {...} 경우 다른 (startsWithVowel (워드)) {...} else {...}'. –