关于修改歌曲信息

关于修改歌曲信息

http://img1.sycdn.imooc.com//climg/605702f509bedd9f06230181.jpg

类似于这种情况的歌曲也是存在,那么根据查询歌曲名字进行查询的时候只查到第一个就循环结束了,或者去掉break语句,遍历到第二个会重新赋值,第一个就被覆盖掉了。怎么才能做到唯一呢?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕阿满 2021-03-21 19:06:57

同学你好,重写equals()方法时,只需要对name和singer进行判断即可,如果name和singer相同,则表示是同一个歌曲,不重复添加。

如果同学允许播放列表中存在重名的歌曲,在通过名称查询时,想要查出所有该名称的歌曲,可以在循环外定义一个集合,循环中判断如果名称相同,则将歌曲添加到集合中,最后返回集合即可。

祝学习愉快~

好帮手慕阿满 2021-03-21 17:35:21

同学你好,同学说的唯一是指播放列表中的歌曲唯一,不能存在相同的歌曲吗?可以在Song类中重写hashCode和equals()方法。添加歌曲到播放列表的方法中对歌曲进行判断,如果添加的歌曲已经在播放列表中,则不再重复添加。

祝学习愉快~

  • 提问者 慕少7077580 #1

    hasCode()方法和equals方法的唯一是,id.name.singer不能完全相同。但是可以有单一不同的现象,就像我图中的,id不同,但是name相同,此时我想通过name查找歌曲信息,那么就应该返回两个歌曲信息,而不是一个

    2021-03-21 18:51:24
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师