切换方法不是 运行
Switch Method not running
Screenshot of my question I'm answering
我运行正在用我的开关方法解决这个问题,其中需要使具有此开关的方法静态。它 运行s 当我从 Main 方法中删除 static 时,没有错误它很高兴直到我去 运行 它我不能。
这是我的代码文件,我不知道为什么 运行 会出现这样的错误,我完全不知道发生了什么。
public static void main(String[] args) {
String sentence = "CsprdkoPurln dhVqq f gul col r jcwk ujd";
System.out.println(howManyVowels(sentence));
}
public String howManyVowels(String sentence) {
String userString;
int a=0, e=0, i=0, o=0, u=0, other=0;
char vowels;
Scanner scan = new Scanner (System.in);
userString = scan.nextLine();
for (int count=0; count < userString.length(); count++)
{
vowels = userString.charAt(count);
switch (vowels) {
case 'a' -> a++;
case 'e' -> e++;
case 'i' -> i++;
case 'o' -> o++;
case 'u' -> u++;
default -> other++;
}
}
return ("Number of each lowercase vowel in the string: \n") + ("a: " + a) + ("\n" + "e: " + e) + ("\n"+"i: " + i) + ("\n"+"o: " + o) + ("\n"+"u: " + u) + ("\n"+"other " + other);
}
}
我 运行 遇到的错误是无法在代码下进行。老实说,我不知道它有什么问题。
它 运行 通过的程序显然使用了旧的 switch 方法。我还没有听说过,因为我所写的就是我所知道的开关的样子。最初我把它格式化为,
switch (vowels)
{
case 'a':
a++;
break;
case 'e':
e++;
break;
case 'i':
i++;
break;
case 'o':
o++;
break;
case 'u':
u++;
break;
default:
other++;
}
除非 Main 方法不是静态的,否则我无法到达 运行,或者我将 howManyVowels 设置为静态,这不在问题标准中,因此被打回错误 + 错误。
我看到您没有使用“howManyVowels”函数的参数“sentence”,而是要求用户输入句子:
这是您可以更正的方法:
public static void main(String[] args) {
String sentence = "CsprdkoPurln dhVqq f gul col r jcwk ujd";
System.out.println(howManyVowels(sentence));
}
public static String howManyVowels(String sentence) {
int a=0, e=0, i=0, o=0, u=0, other=0;
char vowels;
for (int count=0; count < sentence.length(); count++)
{
vowels = sentence.charAt(count);
switch (vowels)
{
case 'a':
a++;
break;
case 'e':
e++;
break;
case 'i':
i++;
break;
case 'o':
o++;
break;
case 'u':
u++;
break;
default:
other++;
}
}
String str = ("Number of each lowercase vowel in the string: \n") +
("a: " + a) + ("\n" + "e: " + e) + ("\n"+"i: " + i) +
("\n"+"o: " + o) + ("\n"+"u: " + u) +
("\n"+"other " + other);
return str;
}
如果您不想要静态上下文,您可以创建另一个名为 Calcul 的类,其中包含“howManyVowels”方法并在主类中调用它,如下所示:
public static void main(String[] args) {
String sentence = "CsprdkoPurln dhVqq f gul col r jcwk ujd";
Calcul.howManyVowels(sentence);
}
Screenshot of my question I'm answering
我运行正在用我的开关方法解决这个问题,其中需要使具有此开关的方法静态。它 运行s 当我从 Main 方法中删除 static 时,没有错误它很高兴直到我去 运行 它我不能。
这是我的代码文件,我不知道为什么 运行 会出现这样的错误,我完全不知道发生了什么。
public static void main(String[] args) {
String sentence = "CsprdkoPurln dhVqq f gul col r jcwk ujd";
System.out.println(howManyVowels(sentence));
}
public String howManyVowels(String sentence) {
String userString;
int a=0, e=0, i=0, o=0, u=0, other=0;
char vowels;
Scanner scan = new Scanner (System.in);
userString = scan.nextLine();
for (int count=0; count < userString.length(); count++)
{
vowels = userString.charAt(count);
switch (vowels) {
case 'a' -> a++;
case 'e' -> e++;
case 'i' -> i++;
case 'o' -> o++;
case 'u' -> u++;
default -> other++;
}
}
return ("Number of each lowercase vowel in the string: \n") + ("a: " + a) + ("\n" + "e: " + e) + ("\n"+"i: " + i) + ("\n"+"o: " + o) + ("\n"+"u: " + u) + ("\n"+"other " + other);
}
}
我 运行 遇到的错误是无法在代码下进行。老实说,我不知道它有什么问题。
它 运行 通过的程序显然使用了旧的 switch 方法。我还没有听说过,因为我所写的就是我所知道的开关的样子。最初我把它格式化为,
switch (vowels)
{
case 'a':
a++;
break;
case 'e':
e++;
break;
case 'i':
i++;
break;
case 'o':
o++;
break;
case 'u':
u++;
break;
default:
other++;
}
除非 Main 方法不是静态的,否则我无法到达 运行,或者我将 howManyVowels 设置为静态,这不在问题标准中,因此被打回错误 + 错误。
我看到您没有使用“howManyVowels”函数的参数“sentence”,而是要求用户输入句子:
这是您可以更正的方法:
public static void main(String[] args) {
String sentence = "CsprdkoPurln dhVqq f gul col r jcwk ujd";
System.out.println(howManyVowels(sentence));
}
public static String howManyVowels(String sentence) {
int a=0, e=0, i=0, o=0, u=0, other=0;
char vowels;
for (int count=0; count < sentence.length(); count++)
{
vowels = sentence.charAt(count);
switch (vowels)
{
case 'a':
a++;
break;
case 'e':
e++;
break;
case 'i':
i++;
break;
case 'o':
o++;
break;
case 'u':
u++;
break;
default:
other++;
}
}
String str = ("Number of each lowercase vowel in the string: \n") +
("a: " + a) + ("\n" + "e: " + e) + ("\n"+"i: " + i) +
("\n"+"o: " + o) + ("\n"+"u: " + u) +
("\n"+"other " + other);
return str;
}
如果您不想要静态上下文,您可以创建另一个名为 Calcul 的类,其中包含“howManyVowels”方法并在主类中调用它,如下所示:
public static void main(String[] args) {
String sentence = "CsprdkoPurln dhVqq f gul col r jcwk ujd";
Calcul.howManyVowels(sentence);
}