如何在没有最后一个逗号的情况下打印出一串数组?

ele*_*ang 0 java

for (String userName : studentEnrollments.keySet()) {
    System.out.println("Student: " + userName);
    ArrayList<String> courses = studentEnrollments.get(userName);
    String courseMessage = "Courses: ";
    for (String singleCourse : courses) {
        courseMessage += singleCourse + ", ";
        System.out.println(courseMessage);
    }
}
Run Code Online (Sandbox Code Playgroud)

在for循环之后,它会打印出学生正在学习的每门课程.使用逗号打印字符串的正确方法是什么,最后没有最后一个逗号?

例如:AC130,AC140,AC150,AC130,AC140,AC150

Krz*_*cki 6

使用Iterator而不是for循环使用while,然后仅当hasNext()返回true时才添加昏迷.

String courseMessage = "Courses: ";
Iterator<String> c = studentEnrollments.get(userName).iterator();

while (c.hasNext()) {
    courseMessage += c.next();
    if (c.hasNext()) {
        courseMessage += ",";
    }
}
Run Code Online (Sandbox Code Playgroud)