我是java的新手,我正在编写一个方法,从播放列表(ArrayList)中返回最长的歌曲,只使用分钟。如果多个歌曲具有相同的最长长度,它将返回第一个遇到的歌曲。如何确保它返回第一个最长的歌曲,而不是最后一个最长的歌曲。
public Song getLongestSong() {
if (this.songs.isEmpty()) {
return null;
}
Song longestSong = this.songs.get(0);
for (Song songs: this.songs) {
if (songs.getMinutes() >= longestSong.getMinutes()) {
longestSong = songs; `
}
}
return longestSong;
}
这看起来像是家庭作业,所以我不打算给出确切的答案https://cs.millersville.edu/~autolab/161-f21/mutunesobject/.
考虑if (songs.getMinutes() >= longestSong.getMinutes()
语句中的检查。如果已经为longestSong
设置了一个值,并且另一首歌曲的长度相同,将会发生什么?如何避免这种情况?