问题是编写一个名为 Seyyed 的类包含一个名为 seyyed 的方法。我应该在 main 方法中将一些人的名字保存在一个字符串数组中,并计算有多少名字以“Seyyed”开头。我写了下面的代码。但是输出是意想不到的。问题出在第 10 行,第一次打印了两次“Enter a name :”这句话。
import java.util.Scanner;
public class Seyyed {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("Enter the number of names :");
int n = in.nextInt();
String[] names = new String[n];
for (int i = 0; i < names.length; i++) {
System.out.println("Enter a name : ");
names[i] = in.nextLine();
}
int s = seyyed(names);
System.out.println("There are " + s + " Seyyed");
in.close();
}
static int seyyed(String[] x) {
int i = 0;
for (String s : x)
if (s.startsWith("Seyyed"))
i++;
return i;
}
}
例如,当我输入 3 以添加 3 个名称时,程序会重复“输入名称:”这句话 2 次,输出如下所示:
Enter the number of names :3
Enter a name :
Enter a name :
Seyyed Saber
Enter a name :
Ahmad Ali
There are 1 Seyyed
我可以输入 2 个名称,而我希望输入 3 个名称。
婷婷同学_
绝地无双
幕布斯6054654
慕桂英3389331
相关分类