java - 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 语句后有分号:)
推荐阅读
- c# - 如何在 VSCode 中添加事件监听器?
- flutter - 如何在 Flutter 中检查日期是否过期?
- python - Python中的@是什么
- java - 订阅者应用程序不使用主题收听 ActiveMQ 上的消息
- python - 我有一个带有网址的文件夹,我该如何称呼它们?(Python)
- reactjs - Axios 将帖子发送到重复的 url
- javascript - 如何使用@react-google-maps/api 更改绘图管理器的控制位置
- gradle - 运行 ./gradlew clean deploynodes 时出现随机错误
- visual-studio-code - 程序“tempCodeRunnerFile.exe”无法运行:访问被拒绝在行:1 字符:110 VS 代码错误
- cmake - 如何将本地文件系统中的 cmake 项目导入 cmake?