1-5的作业问题

1-5的作业问题

老师好,我有三个问题,麻烦解答下:

  1. 在实现歌单导出时在用String.valueOf(musicList)这个方法为什么会显示两次呢?

http://img1.sycdn.imooc.com//climg/5acc98aa0001960b10960637.jpg

  2.怎样实现判断如果在普通歌单列表中如果存在就不再添加进该列表呢?

  3.怎样实现在删除普通列表1中的歌曲时不删除普通列表2中的同一首歌曲呢?

麻烦老师最好用代码来显示一下,非常感谢!

正在回答

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

1回答

1、需要根据你更改后的代码来进行解答。

2、作业的需求是,如果歌曲在主播放列表中存在,就可以直接添加进普通播放列表;如果歌曲不存在于主播放列表,需要同时添加主播放列表和普通播放列表。关于你说的这个问题,在我们的作业需求中没有体现出来,但是依旧可以使用一个标志符来进行判定添加的。

3、如果是普通播放列表1删除歌曲,那就查找到普通播放列表1对应的PlayList对象,通过这个PlayList对象调用删除方法,删除歌曲就可以了;这样就不会影响到其他播放列表了。

祝学习愉快!

  • 慕虎8754231 提问者 #1
    嗯,第一点这个问题是我之前实现起来发现会显示两次的,代码如下: // 导出歌单 public void exportPlayList(String songListName) { String songListName1 = songListName; try { BufferedWriter bw = new BufferedWriter(new FileWriter(songListName + ".txt")); for (Song song : musicList) { bw.write(String.valueOf(musicList)); bw.newLine(); bw.flush(); } bw.close(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } 第二点确实在视频需求中没有体现; 第三点的话,如果需要那就查找到普通播放列表1对应的PlayList对象时,其实是操纵的song这个对象,当删除song这个对象实际上在所有的PlayList中都会删除song这个对象,而与PlayList对象无关,因为我觉得PlayList对象只是一个容器,当容器内的song都删除后,应该所有容器中的song都会删除。不知道我这个理解对不对呢?麻烦老师解答下,谢谢0.0
    2018-04-11 11:26:09
  • 好帮手慕雪 回复 提问者 慕虎8754231 #2
    1)for中bw.write(String.valueOf(musicList));错了怎么能写musicList整个列表呢?for不就是想循环遍历musicList所有的歌曲的嘛。要不你就把for去掉,要不你就写song。3)不是你想的那样。你要遍历这个PlayList去寻找song,找到了就把PlayList中的song删除,不会影响其它PlayList列表的。
    2018-04-11 11:59:31
  • 慕虎8754231 提问者 #3
    非常感谢!
    2018-04-11 12:00:51
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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