A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wukai 中级黑马   /  2015-3-22 23:29  /  1784 人查看  /  5 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

定义2个新类,分别命名为Song/Playlist。Song对象包含歌曲的信息,歌名、艺术家、专辑、歌曲长度;Playlist对象表示一个播放列表,包含播放列表名称和一个歌曲的集合,还应该提供添加和删除歌曲的方法。(Objective-C)

5 个回复

倒序浏览
这个题目,之前就回答过。
  1. // Playlist.h
  2. #import <Foundation/Foundation.h>
  3. @class Song;

  4. @interface Playlist : NSObject

  5. @property (nonatomic,strong) NSString *listName; // 列表名称
  6. @property (nonatomic, strong) NSMutableDictionary *songSet; // 歌曲集合

  7. // 添加歌曲
  8. - (void)addSong:(Song *)song;

  9. // 删除歌曲
  10. - (void)deleteSong:(NSString *)songName;

  11. @end
复制代码

  1. // Playlist.m
  2. #import "Playlist.h"
  3. #import "Song.h"

  4. @implementation Playlist
  5. // 添加歌曲
  6. - (void)addSong:(Song *)song
  7. {
  8.     [_songSet setObject:song forKey:song.songName];
  9. }

  10. // 删除歌曲
  11. - (void)deleteSong:(Song *)songName
  12. {
  13.     [_songSet removeObjectForKey:songName];
  14. }

  15. @end
复制代码

  1. //Song.h
  2. #import <Foundation/Foundation.h>

  3. @interface Song : NSObject
  4. @property (nonatomic, strong) NSString *songName; // 歌名
  5. @property (nonatomic, strong) NSString *singer; // 歌手
  6. @property (nonatomic, strong) NSString *zhuanJi; // 专辑
  7. @property (nonatomic, assign) double length; // 歌曲长度 (秒)
  8. @end
复制代码

  1. //  Song.m
  2. #import "Song.h"

  3. @implementation Song

  4. @end
复制代码

  1. //  main.m
  2. #import <Foundation/Foundation.h>
  3. #import "Song.h"
  4. #import "Playlist.h"

  5. int main(int argc, const char * argv[])
  6. {
  7.     Song *s = [[Song alloc] init];
  8.     s.songName = @"asdf";
  9.    
  10.     Playlist *p = [[Playlist alloc] init];
  11.    
  12.     NSMutableDictionary *dic = [NSMutableDictionary dictionary];
  13.    
  14.     p.songSet = dic;
  15.    
  16.     [p addSong:s];
  17.     NSLog(@"%@", p.songSet);
  18.    
  19.     [p deleteSong:@"天意"];
  20.    
  21.     NSLog(@"%@", p.songSet);
  22.    
  23.     return 0;
  24. }
复制代码
回复 使用道具 举报
回答得很好,学习了
回复 使用道具 举报
学习了。
回复 使用道具 举报
tzp123 来自手机 中级黑马 2015-3-25 00:58:35
报纸
很好赞一个
回复 使用道具 举报
学习了,感谢!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马