- 博客(19)
- 资源 (3)
- 收藏
- 关注
原创 NSArray排序的三种方法
1、 sortedArrayUsingSelector:(SEL)2、 sortedArrayUsingComparetor:^NSComparisionResult(id obj1,id obj2){}3、 sortedArrayUsingDescriptors:(NSArray *) NSSortDescr
2015-01-06 22:43:36 297
原创 NSArray的遍历方法:四种
两种是for循环就不写了。第三种:block [ array enumerateObjectUsing Block:^(id obj,NSUInteger index,BOOL *stop){ NSLog(@" index = %zi,obj = %@",index,obj);}第四种 迭代器 NSEnum
2015-01-06 18:45:49 267
原创 <NSCopying>
所有满足协议的 类,如果进行 copy操作时。会调用 - (id)copyWithZone:(NSZone *) zone. - (id)copyWithZone:(NSZone *) zone{ id copy = [[[self class] allocWithZone:zone] init]; // 由于alloc用的空间是传进来的,因此不需rel
2015-01-06 16:07:59 257
原创 NSMutableString 比NAString多的方法
NSMutableString *mstr = [ NSMutableString alloc] initWithCapacity:10] // 可变字符串最优容量 [mstr setString:@"Myname"]; [ mstr appendString:@" is"]; [ mstr insertStrng :@" is" atIndex:4];
2015-01-06 15:06:58 344
原创 NSString的导出方法
1、写入文件。如果这个文件已经存在,字符串会覆盖原文件的内容。如果文件不存在,则会创建新文件。但是如果,路径中的文件夹原本不存在,则就会报错。意思是必须为存在的文件夹。 注意点: 选用 atomiclly 为YES ,这样在导出前,会将字符串到处在一个 temp 文件中,完全导到temp成功后,再写入目标文件。 NSString *str = @"wo shi
2015-01-05 20:16:53 404
原创 NSString的生成方法
1、NSString *str1 = [ [NSString alloc] intWithString:@"MY"]; [ str1 release];2、NSString *str2 = [ [NSString alloc] intWithUTF8String:"MY"];
2015-01-05 19:25:41 266
原创 Foundation中的常用结构体 Range、Point、Size和Rect
1、Range 包含的成员变量:location 和 length。多数通过 NSMakeRange( location , length) 生成。主要用于字符串的截取输出 Range 必须先转化为 stringNSLog(@“ %@”, NSStringFromRange( NSMakeRange( location , length) );
2015-01-05 18:55:07 407
原创 代理模式@protocol
代理模式三要素: 代理协议,主体中有一个成员变量是满足代理协议的,代理满足代理协议。1、代理协议#import @class Button ;@protocol Myprotocol - (void)onClick:(Button *)btn;@end2、主体中有一个成员变量是满足代理协议的#import @inter
2015-01-04 22:49:26 292
原创 block
1、block代码中可读取外部变量的值,如果外部变量被__block 修饰(两条下划线)的话,还能修改 例子如下:int m = 10;__block int n=10;void (^sum) ( int,int ) = ^(int a, int b){ NSLog(@" %i ",m); n=11; NSLog(@" %i ",n)
2015-01-04 22:28:48 277
原创 判断已经声明的方法是否实现
假设一个按钮的代理方法- (void)click{ if( [ _delegate respondsToSelector:@selector(onOclick:)]) // 如果onClick方法已实现,则使用该该法 [ _delegate onClick:self ] ;}
2015-01-04 20:21:18 292
原创 @class
@class 指明类。不用包含。#import 包含 继承类必须采用包含方式。 被包含的类一旦有丁点改变,包含他的文件需要重新编译。
2015-01-04 15:22:49 221
原创 道德经 第三章
第三章不尚贤,使民不争。不贵难得之货,使民不为盗。不见可欲,使民心不乱。是以圣人之治,虚其心,实其腹;弱其志,强其骨。常使民无知无欲,使夫知者不敢为也。为无为,则无不治。<完> 不尚贤,使民不争。 (古代最大政治资产)太子立长不立贤,使人无所争。日常生活中,完全按先后顺序。比如排队,就不可能有争执。不贵难得之货,使民...
2015-01-04 13:22:15 415
原创 OC内存管理
OC 内存管理的实质就是 引用计数器的管理。对于 alloc ,copy,new,retain的对象 要对应的 release。对于创建单例对象时,重新查询的retainCount 返回 NSUIntegerMAX,为的就是欺骗系统,实例对象始终不会释放。
2015-01-03 21:25:45 242
原创 重写description方法
在NSLog(@" %@ ", obj );时会调用description方法。 该方法默认返回的是对象的 类及对象的地址重写description- (NSString *)description // 返回一个OC字符串{ return [ NSString stringWithFormat:@"Name is %@ No is %d\n",_name
2015-01-03 17:48:16 255
原创 重写构造方法
- (id)initName:(NSString *)name andNo { self = [super init] // 必须先用父类的方法初始化后,再初始化自己的特有成员变量 if( self) // 严谨起见,需判断是否父类初始化成功{ _name = name ; _no = no ;} return self ;
2015-01-03 17:05:53 246
原创 关键字extern和static
关键字extern和static都能修饰函数和变量;extern可声明和定义函数,默认可省略,是外部函数;extern可声明变量,但是不可定义变量。static 声明和定义函数 ,不可省略。
2015-01-03 14:45:15 255
原创 变量类型 15-1-2
C语言的的变量:全局变量,局部变量(静态局部变量(static)生命周期自调用所在函数开始直至程序结束)。自动变量、寄存器变量:register 只能修饰自动变量,当寄存器不够用时,自动按自动变量使用。寄存器变量只能修饰 int 、char 和指针变量 三种自动变量。register int a;regster char c;register char
2015-01-02 22:48:06 186
原创 预处理指令
总共三种:宏定义、条件编译、文件包含宏定义:有三种:无替换、无参数、有参数#define ME#defne ME (6)#define SUM(a,b)((a)+(b))条件编译:记得以#endif结尾#if defined(ME) ,记得加括号,有d结尾,表示定义过#if !defined(ME)#ifndef ME#ifd
2015-01-02 17:15:43 231
org.apache.kafka kafka-log4j-appender 的jar包下载
2018-11-03
org.apache.kafka kafka_2.10 0.10.2.0 的jar包下载
2018-11-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人