如何打印出Map <string,list <object =“”>&gt;在Java中

时间:2017-01-28 14:48:45

标签: java view controller java-stream dao

我试图通过我的View类打印出一个名为DVD的对象的内容,但不幸的是我无法。我正在尝试修复getDVDByDirectorSortedByMpaaRating()类中的DVDLibraryController,这需要DVDLibraryView类中的方法。

ServiceLayer实施中的功能:

@Override
public Map<String, List<DVD>> getDVDByDirectorSortedByMpaaRating(String directorName) {
    return dvds.values()
        .stream()
        .filter(s -> s.getDirectorName().equalsIgnoreCase(directorName))
        .collect(Collectors.groupingBy(DVD::getMpaaRating));
}

尝试在Controller中调用此函数:

private void getDVDByDirectorSortedByMpaaRating() throws DVDLibraryPersistenceException{
    String director = view.getDirectorName();
    Map<String, List<DVD>> dvdList = service.getDVDByDirectorSortedByMpaaRating(director);
    view.displayDVDsByDirectorsSortedByMpaaRating(dvdList.toString());
}

我不确定如何在Controller中完成该方法,我不知道如何从View类打印结果。

现在,这是在View:

中打印结果的方法的开始
public void displayDVDsByDirectorsSortedByMpaaRating(String directors){
        io.print(directors);
}

非常感谢任何帮助。

编辑:打印输出结果如下:

  

{R = [DVDLibrary.dto.DVD@37bba400],PG = [DVDLibrary.dto.DVD@179d3b25]}

它绝对是按Mpaa评级排序,但打印输出无法正常工作。

0 个答案:

没有答案