------Java培訓、Android培訓、iOS培訓、.Net培訓、期待與您交流!
-------
Blog類:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
#import
"Blog.h" @implementation
Blog +(Blog
*)blog{ Blog
* blog = [[Blog alloc] init]; return
blog; } -(Blog
*)setBlogTitle:(NSString *)title andContent:(NSString *)content{ _title
= title; _content
= content; return
self; } -(NSString
*)description{ return
[NSString stringWithFormat:@ "blog
: title is \"%@\" , and content is \"%@\"" ,
_title,_content ]; } -( void )dealloc{ NSLog(@ "%@被銷燬了" ,self.title); } @end |
主函數:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
#pragma
mark Array數組的四種遍歷方法 void
testArray(){ Blog
*blog1 = [[Blog blog] setBlogTitle:@ "Love"
andContent:@ "I
love you" ]; Blog
*blog2 = [[Blog blog] setBlogTitle:@ "Friendship"
andContent:@ "you
are my best friend" ]; NSArray
*array = [NSArray arrayWithObjects:@ "hello" ,@ "world" ,blog1,blog2,
nil]; //第一種遍歷:普通for循環 long
int
count = [array count]; for
( int
i = 0 ; i < count; i++) { NSLog(@ "1遍歷array:
%zi-->%@" ,i,[array
objectAtIndex:i]); } //第二種遍歷:快速for循環,需要有外變量i int
i = 0; for
(id obj in array) { NSLog(@ "2遍歷array:%zi-->%@" ,i,[array
objectAtIndex:i]); i++; } //第三種遍歷:OC自帶方法enumerateObjectsUsingBlock: //默認爲正序遍歷 [array
enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL
*stop) { NSLog(@ "3遍歷array:%zi-->%@" ,idx,obj); }]; //NSEnumerationReverse參數爲倒序遍歷 [array
enumerateObjectsWithOptions:NSEnumerationReverse usingBlock:^(id obj, NSUInteger idx,
BOOL
*stop) { NSLog(@ "4倒序遍歷array:%zi-->%@" ,idx,obj); }]; //第四種遍歷:利用枚舉 NSEnumerator
*en = [array objectEnumerator]; id
obj; int
j = 0 ; while
(obj = [en nextObject]) { NSLog(@ "5遍歷array:%d-->%@" ,j,obj); j++; } } int
main( int
argc, const
char
* argv[]) { @autoreleasepool
{ testArray(); } return
0; } |