Java println插入额外的新行

btb*_*m91 1 java eclipse newline println

这让我不知所措.无论出于何种原因,System.out.println正在插入一个额外的换行符,我不明白为什么.有问题的代码是:

System.out.println("Videos: ");
for (Video video: videosToBeRented) {
    System.out.println(video.getName() + " - " + video.getType());
}
System.out.println("price: " + price + "\n");
Run Code Online (Sandbox Code Playgroud)

这是一个示例输出:

Videos: 
The Walking Dead Cats - ROMANCE

Star Scrimmage - HORROR

Cat in the Boot - NEW_RELEASE
price: 91.0
Run Code Online (Sandbox Code Playgroud)

视频是一个简单的类,它包含两个私有实例变量String name和VideoType类型.VideoType是一个枚举.

任何想法为什么前两个跳过最后一个没有的空间?我正在使用Eclipse.也许有一个我不小心碰到的环境.

谢谢!

***更新添加Video和VideoType类.

public class Video {

//Private Instance Variables
private String name;
private VideoType type;

public Video(String name, VideoType type) {
    this.name = name;
    this.type = type;
}

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public VideoType getType() {
    return type;
}

public void setType(VideoType type) {
    this.type = type;
}
Run Code Online (Sandbox Code Playgroud)

}

public enum VideoType {
NEW_RELEASE(6.00), DRAMA(5.00), COMEDY(2.00), ROMANCE(4.00), HORROR(3.00);

private double price;

VideoType(double price) {

    this.price = price;
}

public double getPrice() {

    return this.price;
}
Run Code Online (Sandbox Code Playgroud)

}

Adi*_*Adi 8

可能的原因是video.getType().toString()值以新行符号('\n')结束.试试看System.out.print看你是否还有新的角色.另一种方法是使用调试器来检查字符.