为什么我的构造函数输出在同一行?

Nar*_*wan 1 java

我是java编程的新手.我一直在尝试通过观看YouTube上的视频和阅读书籍来自学.我找到了关于构造函数和多个类的教程.我已经完成了教程中的所有内容,但我的输出显示在同一行,而他的输出则在另一行.
这让我疯了,我无法弄清楚为什么这样做.

这是名为apples的类中的代码:

public class apples{

    public static void main(String[] args){

        tuna tunaObject = new tuna("Neela");
        tuna tunaObject2 = new tuna("Neela");
        tunaObject.saying();
        tunaObject2.saying();
Run Code Online (Sandbox Code Playgroud)

这是金枪鱼类:

public class tuna {
    private String girlName;

    public tuna(String name){
        girlName = name;
    }


    public void setName(String name){
        girlName = name;

    }

    public String getName(){
        return girlName;
    }

    public void saying(){
        System.out.printf("Your first gf was %s",  getName());
    }

}
Run Code Online (Sandbox Code Playgroud)

当我运行程序时,我在控制台窗口中得到它:

"你的第一个gf是Neela你的第一个gf是Neela"

Ell*_*sch 6

因为您的格式String不包含行分隔符.我相信你想要的

public void saying(){
    System.out.printf("Your first gf was %s%n",  getName());
}
Run Code Online (Sandbox Code Playgroud)

代替

public void saying(){
    System.out.printf("Your first gf was %s",  getName());
}
Run Code Online (Sandbox Code Playgroud)

格式字符串语法说(部分)

'n'   line separator  The result is the platform-specific line separator 
Run Code Online (Sandbox Code Playgroud)