【发布时间】:2021-07-10 00:37:33
【问题描述】:
我正在尝试使用流对歌曲对象数组进行排序,问题是我正在尝试使用对象的属性 -title- 对对象列表进行排序,然后将流的数据类型更改为细绳。我不知道如何阻止这种情况发生,有什么建议吗?
public void sort(){
allSongs = allSongs.stream()
.map(song -> song.getArtist(cs))
.sorted()
.collect(Collectors.toList(allSongs));
}
public String getArtist(CustomSong cs){
return cs.artist;
}
【问题讨论】:
-
cs在sort()方法中是什么?为什么getArtist不使用Song对象时是实例方法? -
cs 是具有以下属性的自定义歌曲对象:标题、艺术家、持续时间、评级、totalListens、显式和流派。对于获取艺术家方法,我应该只引用它而不使用对象吗?
-
是的,假设
getArtist方法是CustomSong类的一个方法,它应该没有参数并且应该简单地做return this.artist;。您需要重新阅读 Java 学习资料中关于 getter 和 setter 方法的部分。
标签: java object oop arraylist stream