IOS7:学习笔记2

一、Deck类

.h文件

 1 #import <Foundation/Foundation.h>
 2 #import "Card.h"
 3
 4 @interface Deck : NSObject
 5
 6 //atTop是方法名的一部分
 7 //addCard有两个参数,参数穿插在方法名间
 8 -(void)addCard:(Card *)card atTop:(BOOL)atTop;
 9
10 //addCard方法的重载,用重载的方式实现可选参数
11 -(void)addCard:(Card *)card;
12
13 -(Card *)drawRandomCard;
14
15
16 @end

.m文件

 1 #import "Deck.h"
 2
 3 @interface Deck()
 4 @property (strong,nonatomic) NSMutableArray *cards; //of Card
 5 @end
 6
 7 @implementation Deck
 8
 9 -(NSMutableArray *)cards
10 {
11     if (!_cards)
12     {
13         _cards=[[NSMutableArray alloc] init];
14     }
15     return _cards;
16 }
17
18 -(void)addCard:(Card *)card atTop:(BOOL)atTop
19 {
20     if (atTop) {
21         [self.cards insertObject:card atIndex:0];
22     }
23     else
24     {
25         [self.cards addObject:card];
26     }
27 }
28
29 -(void)addCard:(Card *)card
30 {
31     [self.cards addObject:card];
32 }
33
34 -(Card *)drawRandomCard
35 {
36     Card *randomCard=nil;
37
38     if ([self.cards count]) {
39         unsigned index=arc4random()%[self.cards count];
40         randomCard=self.cards[index];
41         [self.cards removeObjectAtIndex:index];
42     }
43     return randomCard;
44 }
45
46 @end
时间: 2024-11-03 21:14:11

IOS7:学习笔记2的相关文章

IOS7:学习笔记1

一.属性 1..h文件: @property (strong,nonatomic) NSString *contents; 2..m文件:接口中定义一个属性后,会在.m文件中隐式的实现如下代码,这个是一个属性访问器, 1 @synthesize contents = _contents; 2 3 -(NSString *)contents 4 { 5 return _contents; 6 } 7 8 -(void)setContents:(NSString *)contents 9 { 10

ios7开发学习笔记-包括c oc 和ios介绍

请查看我的新浪资料分享 http://iask.sina.com.cn/u/2430843520 ios7开发学习笔记-包括c oc 和ios介绍,布布扣,bubuko.com

NSURLSession学习笔记

NSURLSession学习笔记(一)简介 一.URL Session的基本概念 1.三种工作模式: 默认会话模式(default):工作模式类似于原来的NSURLConnection,使用的是基于磁盘缓存的持久化策略,使用用户keychain中保存的证书进行认证授权. 瞬时会话模式(ephemeral):该模式不使用磁盘保存任何数据.所有和会话相关的caches,证书,cookies等都被保存在RAM中,因此当程序使会话无效,这些缓存的数据就会被自动清空. 后台会话模式(background)

ios/mac/COCOA系列 -- UIALertVIew 学习笔记

最近在学习ios开发,学习的书籍<ios7 Pragramming cookbook>,做笔记的目的以后方便查看.笔记形式是小例子,将书上的例子书写完整. UIAlertViewClass 的使用场景 1,向用户以一个警告的形式显示信息. 2,让用户确认一些动作 3,让用户输入用户名和密码 4,让用户输入一些文本,这些文本在程序被使用 例1   实现简单显示一些警告信息 新建一个 Single View Application 简单工程,工程名字维AlterView,扩展前缀CB   代码如下

UI学习笔记---第八天

UINavigationController的用法   界面间传值 UInavigationController继承于UIViewController,以栈的方式管理所控制的师徒控制器,至少要有一个被管理的视图控制器 创建的时候需要用户提供一个视图控制器作为导航控制器的一个根视图控制器 出栈和人栈 UINavigationController通过控制入栈和出栈来展示各个视图控制器 视图控制器切换常用方法 pushViewController:animated //进?下一个视图控制器 popVi

vector 学习笔记

vector 使用练习: /**************************************** * File Name: vector.cpp * Author: sky0917 * Created Time: 2014年04月27日 11:07:33 ****************************************/ #include <iostream> #include <vector> using namespace std; int main

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则 用了几天时间看了一下开源框架Caliburn.Micro 这是他源码的地址http://caliburnmicro.codeplex.com/ 文档也写的很详细,自己在看它的文档和代码时写了一些demo和笔记,还有它实现的原理记录一下 学习Caliburn.Micro要有MEF和MVVM的基础 先说一下他的命名规则和引导类 以后我会把Caliburn.Micro的 Actions IResult,IHandle ICondu

jQuery学习笔记(一):入门

jQuery学习笔记(一):入门 一.JQuery是什么 JQuery是什么?始终是萦绕在我心中的一个问题: 借鉴网上同学们的总结,可以从以下几个方面观察. 不使用JQuery时获取DOM文本的操作如下: 1 document.getElementById('info').value = 'Hello World!'; 使用JQuery时获取DOM文本操作如下: 1 $('#info').val('Hello World!'); 嗯,可以看出,使用JQuery的优势之一是可以使代码更加简练,使开

[原创]java WEB学习笔记93:Hibernate学习之路---Hibernate 缓存介绍,缓存级别,使用二级缓存的情况,二级缓存的架构集合缓存,二级缓存的并发策略,实现步骤,集合缓存,查询缓存,时间戳缓存

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------

Activiti 学习笔记记录(三)

上一篇:Activiti 学习笔记记录(二) 导读:上一篇学习了bpmn 画图的常用图形标记.那如何用它们组成一个可用文件呢? 我们知道 bpmn 其实是一个xml 文件