public class vowel {
public static void main(String args[])
{
String sentence;
int vowels = 0, digits = 0, blanks = 0, consonants=0;
char ch;
System.out.print("Enter a String : ");
sentence = TextIO.getln();
sentence = sentence.toLowerCase();
for(int i = 0; i < sentence.length(); i ++)
{
ch = sentence.charAt(i);
if(ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u')
vowels ++;
else if(ch =='b'|| ch == 'c' || ch == 'd'|| ch =='f' || ch =='g' ||
ch == 'h' || ch =='j' || ch =='k'|| ch =='l' || ch =='m' ||
ch == 'n' || ch =='p' || ch =='q'|| ch =='r' || ch =='s' ||
ch == 't' || ch =='v' || ch =='w'|| ch =='x' || ch =='z' ||
ch == 'y')
consonants ++;
else if(Character.isDigit(ch))
digits ++;
else if(Character.isWhitespace(ch))
blanks ++;
}
System.out.println("Vowels : " + vowels);
System.out.println("Consonants : " +consonants);
System.out.println("Digits : " + digits);
System.out.println("Blanks : " + blanks);
}
}
这个程序完美地计算,但我希望在函数显示中添加它计数的单词
例如,输入ABBCC12
:
Vowels :1
Input Vowels : A
Consonants :4
Input Consonants : BBCC
Digits :2
Input Digits :12
我可以知道接下来该做什么吗? 提前致谢
答案 0 :(得分:1)
看起来最适合您当前工作方式的方法是为每种类型保留StringBuilder
:
vowelsStringBuilder = new StringBuilder();
然后每当遇到一个,你就把它添加到:
vowelsStringBuilder.append(ch);
最后,您可以使用
String vowelsString = vowelsStringBuilder.toString();
获取包含所有元音的最终String
。
事实上,如果你这样做,你就不需要像往常一样计算它们,因为你可以用vowelsString.length()
得到最后元音的数量。