java我怎样才能运行它?
好像我什么都试过了,但什么都没用。我如何才能获得此信息,以便用户可以决定是否添加其他名称?我可以在没有用户决定的情况下运行for循环
import java.util.Scanner;
import java.text.DecimalFormat;
public class Part2 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
final int STUDENT_SIZE = 50;
char choice1 = 'n';
int i = 0;
int stdntLength = 0;
boolean choice = true;
String[] stdntName = new String[STUDENT_SIZE];
String[] WIDNUM = new String[STUDENT_SIZE];
int[] EXM1 = new int[STUDENT_SIZE];
int[] EXM2 = new int[STUDENT_SIZE];
int[] EXM3 = new int[STUDENT_SIZE];
int[] finalExm = new int[STUDENT_SIZE];
do {
for (i = 0; i < stdntName.length; i++) {
System.out.println("Please enter the name of Student "
+ (i + 1) + ": ");
stdntName[i] = s.nextLine();
String fullName = stdntName[i];
String str[] = fullName.split(" ");
StringBuilder sb = new StringBuilder();
sb.append(str[1]);
sb.append(", ");
sb.append(str[0]);
String fullname = sb.toString();
stdntName[i] = fullname;
System.out.println(stdntName[i]);
System.out.print("Do you wish to enter another? (y/n): ");
choice1 = s.next().charAt(0);
}
} while (choice1 == 'y');
}
}
# 1 楼答案
do-while
循环似乎是多余的,可能会被删除在输入第i个学生的数据时,最好检查输入的
y
,如果输入了除y
以外的任何字符,最好将其打断更新
需要解决的其他问题:
str
的长度;将最后一个名称移到开头(而不仅仅是第二个名称)李>choice1
时,使用nextLine()
而不是next()
,因为\n
没有被使用,而用nextLine
读取的下一个名称将是一个空行李>