字符串

字符串,第1张

概述-(id) initWithString:(NSString *)str; -(id) initWithFormat:(NSString *)format... 求字符串长度 -(NSInteger) length 拼接字符串 -(NSString *)stringByAppendingString:(NSString  -(NSString *)substringFromIndex:(NSUIn @H_502_1@

-(ID) initWithString:(Nsstring *)str;
-(ID) initWithFormat:(Nsstring *)format...

求字符串长度

-(NSInteger) length

拼接字符串

-(Nsstring *)stringByAppendingString:(Nsstring 

-(Nsstring *)substringFromIndex:(NSUInteger)anIndex
-(Nsstring *)substringToIndex:(NSUInteger) anIndex

其他类型->字符串
-(ID) initWithFormat:(Nsstring *)format...
字符串->其他类型
-(double) doubleValue
-(int) intValue
-(BOol) boolValue

-(NSComparisonResult) compare:(Nsstring *)str
-(Nsstring *)uppercaseString

2、所有权机制

OC中, 只有当你对一个对象做了alloc,copyretain等 *** 作后,你才拥有它的所有权。当你不在需要这个对象的时候,你需要释放对他的所有权

retain:使对象引用计数加1

copy:创建一个对象副本,此副本的引用计数为1,原对象引用计数不变。

release:使对象的引用计数减1

autorelease:对象的引用计数在未来某一时间减1

dealloc方法是从NSObject类里继承过来的。通常是子类重写用的,主要功能是对象销毁的时候把释放实例变量的所有权。

2、 dealloc不需要自己调用,当对象引用计数为0的时候,系统自动调用dealloc方法。

3、 最后调用[super dealloc]释放父类变量。

7、属性的内部实现

系统对设置器的实现:
-(voID) setname:(Nsstring *)aname
{
   if(name != aname)
   {
      [name release];
      name = [aname retain];
   }
}

系统对访问器的实现
-(Nsstring *)name
{
   return name;
}

1、数组

2、字典

3、集合


1、 初始化
-(ID)initWithObjects:(ID) firstObj,...
+(ID)arrayWithObjects:(ID) firstObj,...

2、获取数组中某个位置的值 

-(ID)objectAtIndex:(NSUInteger) index

3、 获取数组里面元素的个数:
-(NSUInteger)count

4、 某元素在数组中的位置
-(NSUInteger) indexOfObject:(ID) object


1、NSMutableArrayNSArray的子类,父类的所有方法子类都可以用。
2、 除此之外,NSMutableArray也添加了2个初始化方法
-(ID) initWithCapacity:(NSUInteger) numItems
+(ID) arrayWithCapacity:(NSUInteger) numItems
3、增加对象
-(voID) addobject:(ID) anObject
4、 删除对象:
-(voID) removeAllObjects
-(voID) removeLastObject
-(voID) removeObjectAtIndex:(NSUInteger) index

NSDictionary

把若干元素用key-value(键值对)的形式存储和组织的一种形式。这些key-value对数据的容器称为字典(NSDictionary)。用key()去访问具体的元素。

  注意:字典中的key-value是无序的。所以键值对的顺序由系统决定。


1、初始化:
-(ID) initWithObjectsAndKeys:(ID) firstObj,...
2、获取字典中key-value对的个数:
-(NSUInteger) count
3、获取所有的key
-(NSArray *)allKeys
4、从key得到value值:
-(ID) objectForKey:(ID)key


增加和修改可变字典的内容:
-(voID) setobject:(ID)anObject forKey:(ID)key
删除可变字典的内容:
-(voID)removeObjectForKey:(ID)key
-(voID)removeAllObjects


集合( NSSet

1、set是一种无序集合;跟数学里面的集合很像

2、查询Cocoa API自学NSSet

1、 ArrayDictionary以及Set中添加一个元素时,ArrayDictionary以及Set会主动持有对它的所有权

2、 而从ArrayDictionarySet中拿掉一个对象时,ArrayDictionarySet会主动放弃对它的所有权。

总结

以上是内存溢出为你收集整理的字符串全部内容,希望文章能够帮你解决字符串所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1058535.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-25
下一篇2022-05-25

发表评论

登录后才能评论

评论列表(0条)

    保存