для школы Я должен сделать сканер, который сможет принимать строковый ввод и подсчитывать количество гласных как 1 "a" и т. Д. Моя проблема в том, что когда я ввожу строку, это не будет пройдите через петли, и я могу просто постоянно вводить и вводить ничего не делает. (Кстати, я использую BlueJ для кодирования). Спасибо за любую помощь!Java код не обрабатывается вход
package VowelCounter;
/**
* Description:
* Author: Jack Cannon
* Date: 11/15/16
*/
import java.util.Scanner;
public class VowelCounter
{
public static void main(String [] args)
{
Scanner input = new Scanner(System.in);
//Prompt the user to enter a phrase
System.out.println("Type in a sentence.");
String phrase = input.nextLine();
//as long as the string isn't "quit",
//count the vowels in the string.
int length = phrase.length();
while(phrase != "quit")
{
int a = 0;
int e = 0;
int i = 0;
int o = 0;
int u = 0;
for(int c = 0; length < 1; length++)
{
char vowels = phrase.charAt(c);
if(vowels == 'a')
{
}
else if(vowels == 'e')
{
}
else if(vowels == 'i')
{
}
else if(vowels == 'o')
{
}
else if(vowels == 'u')
{
}
}
}
System.out.println("There are " + 'a' + "a's");
System.out.println("There are " + 'e' + "e's");
System.out.println("There are " + 'i' + "i's");
System.out.println("There are " + 'o' + "o's");
System.out.println("There are " + 'u' + "u's");
//print out the count of the vowels for this string.
//prompt the user for another phrase.
}
}
вы только когда задайте один раз ... также использовать строку равно метод при сравнении строк в Java –
есть какая-либо причина вы используете длину <1 в цикле? этот wont цикл через все количество символов. Также, возможно, посмотрите на использование корпуса коммутатора –