Java не выводит код правильно, когда слово начинается с согласного. Она выводит:PigLatin не выводит правильно
Исключение в потоке «главный»
Это работает, когда слово начинается с гласной.
import java.util.*;
public class PigLatin {
public static void main(String[] args) {
String word = getWord();
String pigLatinWord = convertToPigLatin(word);
System.out.println(pigLatinWord + " is the word translated in PigLatin");
}
public static String getWord() {
Scanner keyboard = new Scanner(System.in);
String word;
System.out.print("Enter a word: ");
word = keyboard.nextLine();
return word;
}
public static boolean isVowel(char character) {
if(character == 'a' || character == 'e' || character == 'i'
|| character == 'o' || character == 'u') {
return true;
} else {
return false;
}
}
public static String convertToPigLatin(String word) {
String pigLatinWord = "";
if(isVowel(word.charAt(0)) == true) {
String latin = word + "yay";
System.out.print(latin);
} else {
for (int x = 0; x < word.length(); x++) {
if(isVowel(word.charAt(x)) == true) {
String partOfWord = word.substring(0,word.charAt(x));
String secondPartOfWord = word.substring(word.charAt(x));
String combination=secondPartOfWord + partOfWord;
pigLatinWord = combination + "ay";
}
}
}
return pigLatinWord;
}
}
- Я хочу, чтобы все мои методы тот же
- я не хочу, чтобы изменить код слишком много
у вас есть дополнительный «и» в ограничениях вашего заявления, если в isVowel(). Начните с удаления этого. Кроме того, можете ли вы отправить Stacktrace об ошибке? Дайте нам пример того, как он не выводится правильно. Что вы ввели? Чего ты ожидал? –
Если слово начинается с гласного, добавьте окончание «yay» в конец слова. Например, индийский в piglatin является indianyay. - Чтобы перевести слова, начинающиеся с согласного (или нескольких согласных) в piglatin, вы должны удалить все начальные согласные, пока не дойдете до гласного . Затем переместите удаленные согласные в конец слова вместе с , заканчивающимся «ay». Таким образом, фарфор у свинарника инчайе, школа в piglatin oolschay, и кошка в piglatin is acay. – Stewart
отредактируйте свое оригинальное сообщение, чтобы все в сообществе SO, читающие ваш вопрос, имели всю необходимую информацию, не пропуская комментариев :) –