Java - ToString Split

时间:2016-05-04 07:25:47

标签: java data-structures linked-list tostring

我的任务是:

1。以下列格式打印出ToString方法

" Name1",发布日期:2013年1月1日

"姓名",发布日期:2011年5月2日

目前我的打印为:

[" Name1",发布于:2013年1月1日" Name2",发布日期:2011年5月2日]

问题:如何打印并将数组拆分为多行,因为添加/ n不能按我需要的方式工作。

    @Override
    public String toString() {  
       DateFormat date = new SimpleDateFormat("MMM dd, yyyy");
       return("\"" + game + "\"" + ", " + "released on: " + date.format(released.getTime()));
 }

附件也是显示输出如何被接受的测试用例。

2 个答案:

答案 0 :(得分:0)

当您发布其包含的元素类的toString()方法时,您似乎正在使用列表的toString()方法。所以你需要在每个元素上调用你的方法并用换行符连接它们,这可以这样做:

gl.stream().map(g -> g.toString()).collect(Collectors.joining("\n"))

答案 1 :(得分:0)

您似乎有GameGameList类。 GameList类似于Game个实例的链接列表。在toString()类的GameList方法中,您必须遍历该链接列表并打印所有值。

方法必须是这样的:

public String toString() {
    StringBuilder builder = new StringBuilder();

    for (Game game = this.head; game != null; game = game.getNext()) {
        if (game != this.head)
            builder.append("\n");

        builder.append(game.toString());
    }

    return builder.toString();
}