Java,在我的代码中只有第一个for语句有效



刚刚开始学习Java和编程,我需要输入50个字符,并计数和显示元音,辅音,数字和特殊字符。在我的元音的第一个for语句之后,它不再正常工作了,我不知道为什么它不工作,所以任何提示都会有所帮助,谢谢。

import java.util.Scanner;
public class CharArray50 {
static Scanner scanner = new Scanner(System.in);
public static void main() {
int z = 0;
do {
String Str50 = "";
int Vowelsnum = 0;
int Consonantsnum = 0;
int Digitsnum = 0;
int SpecialCharnum = 0;
System.out.print("Input 50 Characters Max: ");
Str50 = scanner.nextLine();
Str50 = Str50.toLowerCase();
System.out.println("Characters: " + Str50);
System.out.print("Vowels: ");
for (int x = 0; x < Str50.length(); x++) {
char Char50 = Str50.charAt(x);
if ((Char50 == 'a')
|| (Char50 == 'e')
|| (Char50 == 'i')
|| (Char50 == 'o')
|| (Char50 == 'u')) {
Vowelsnum += 1;
System.out.print(" " + Char50);
}
}
System.out.println("nNumber of Vowels: " + Vowelsnum);
System.out.print("Consonants: ");
for (int a = 0; a < Str50.length(); a++) {
char Char50 = Str50.charAt(a);
if ((Char50 == 'b')
|| (Char50 == 'c')
|| (Char50 == 'd')
|| (Char50 == 'f')
|| (Char50 == 'g')
|| (Char50 == 'h')
|| (Char50 == 'j')
|| (Char50 == 'k')
|| (Char50 == 'l')
|| (Char50 == 'm')
|| (Char50 == 'n')
|| (Char50 == 'p')
|| (Char50 == 'q')
|| (Char50 == 'r')
|| (Char50 == 's')
|| (Char50 == 't')
|| (Char50 == 'v')
|| (Char50 == 'w')
|| (Char50 == 'x')
|| (Char50 == 'y')
|| (Char50 == 'z'))
;
{
Consonantsnum += 1;
System.out.print(" " + Char50);
}
}
System.out.println("nNumber of Consonants: " + Consonantsnum);
System.out.print("Digits: ");
for (int b = 0; b < Str50.length(); b++) {
char Char50 = Str50.charAt(b);
if ((Char50 == '0')
|| (Char50 == '1')
|| (Char50 == '2')
|| (Char50 == '3')
|| (Char50 == '4')
|| (Char50 == '5')
|| (Char50 == '6')
|| (Char50 == '7')
|| (Char50 == '8')
|| (Char50 == '9'))
;
{
Digitsnum += 1;
System.out.print(" " + Char50);
}
}
System.out.println("nNumber of Digits: " + Digitsnum);
System.out.print("Special Characters: ");
for (int c = 0; c < Str50.length(); c++) {
char Char50 = Str50.charAt(c);
if ((Char50 == '~')
|| (Char50 == '`')
|| (Char50 == '!')
|| (Char50 == '@')
|| (Char50 == '#')
|| (Char50 == '$')
|| (Char50 == '%')
|| (Char50 == '^')
|| (Char50 == '&')
|| (Char50 == '*')
|| (Char50 == '(')
|| (Char50 == ')')
|| (Char50 == '-')
|| (Char50 == '_')
|| (Char50 == '+')
|| (Char50 == '=')
|| (Char50 == '{')
|| (Char50 == '}')
|| (Char50 == '[')
|| (Char50 == ']')
|| (Char50 == '|')
|| (Char50 == '/')
|| (Char50 == ':')
|| (Char50 == ';')
|| (Char50 == '"')
|| (Char50 == '<')
|| (Char50 == '>')
|| (Char50 == ',')
|| (Char50 == '.')
|| (Char50 == '?'))
;
{
SpecialCharnum += 1;
System.out.print(" " + Char50);
}
}
System.out.println("nNumber of Special Characters: " + SpecialCharnum);
} while (z == 0);
}
}

if语句后面有分号:)

最新更新