基础只是要了解

/*******************************************************************************************
  NSString
  *******************************************************************************************/
//一、NSString   
/*----------------创建字符串的方法----------------*/
 
//1、创建常量字符串。
NSString *astring = @ "This is a String!" ;
 
 
//2、创建空字符串,给予赋值。
 
NSString *astring = [[ NSString alloc] init];
astring = @ "This is a String!" ;
[astring release];
NSLog (@ "astring:%@" ,astring);
 
 
 
//3、在以上方法中,提升速度:initWithString方法
 
NSString *astring = [[ NSString alloc] initWithString:@ "This is a String!" ];
NSLog (@ "astring:%@" ,astring);
[astring release];
 
 
 
//4、用标准c创建字符串:initWithCString方法
 
char *Cstring = "This is a String!" ;
NSString *astring = [[ NSString alloc] initWithCString:Cstring];
NSLog (@ "astring:%@" ,astring);
[astring release];
 
 
 
//5、创建格式化字符串:占位符(由一个%加一个字符组成)
 
int i = 1;
int j = 2;
NSString *astring = [[ NSString alloc] initWithString:[ NSString stringWithFormat:@ "%d.This is %i string!" ,i,j]];
NSLog (@ "astring:%@" ,astring);
[astring release];
 
 
 
//6、创建临时字符串
 
NSString *astring;
astring = [ NSString stringWithCString: "This is a temporary string" ];
NSLog (@ "astring:%@" ,astring);
 
 
 
 
/*----------------从文件读取字符串:initWithContentsOfFile方法----------------*/   
 
NSString *path = @ "astring.text" ;
NSString *astring = [[ NSString alloc] initWithContentsOfFile:path];
NSLog (@ "astring:%@" ,astring);
[astring release];
 
 
/*----------------写字符串到文件:writeToFile方法----------------*/   
 
 
NSString *astring = [[ NSString alloc] initWithString:@ "This is a String!" ];
NSLog (@ "astring:%@" ,astring);
NSString *path = @ "astring.text" ;   
[astring writeToFile: path atomically: YES ];
[astring release];   
 
 
 
 
/*----------------比较两个字符串----------------*/       
 
//用C比较:strcmp函数
 
char string1[] = "string!" ;
char string2[] = "string!" ;
if (strcmp(string1, string2) = = 0)
{
     NSLog (@ "1" );
}
 
 
 
//isEqualToString方法   
NSString *astring01 = @ "This is a String!" ;
NSString *astring02 = @ "This is a String!" ;
BOOL result = [astring01 isEqualToString:astring02];
NSLog (@ "result:%d" ,result);
 
 
 
 
//compare方法(comparer返回的三种值)   
NSString *astring01 = @ "This is a String!" ;
NSString *astring02 = @ "This is a String!" ;   
BOOL result = [astring01 compare:astring02] = = NSOrderedSame ;   
NSLog (@ "result:%d" ,result);   
//NSOrderedSame判断两者内容是否相同
 
 
 
 
NSString *astring01 = @ "This is a String!" ;
NSString *astring02 = @ "this is a String!" ;
BOOL result = [astring01 compare:astring02] = = NSOrderedAscending ;   
NSLog (@ "result:%d" ,result);
//NSOrderedAscending判断两对象值的大小(按字母顺序进行比较,astring02大于astring01为真)
 
 
 
NSString *astring01 = @ "this is a String!" ;
NSString *astring02 = @ "This is a String!" ;
BOOL result = [astring01 compare:astring02] = = NSOrderedDescending ;   
NSLog (@ "result:%d" ,result);    
//NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)
 
 
 
//不考虑大小写比较字符串1
NSString *astring01 = @ "this is a String!" ;
NSString *astring02 = @ "This is a String!" ;
BOOL result = [astring01 caseInsensitiveCompare:astring02] = = NSOrderedSame ;   
NSLog (@ "result:%d" ,result);    
//NSOrderedDescending判断两对象值的大小(按字母顺序进行比较,astring02小于astring01为真)
 
 
 
//不考虑大小写比较字符串2
NSString *astring01 = @ "this is a String!" ;
NSString *astring02 = @ "This is a String!" ;
BOOL result = [astring01 compare:astring02
                         options: NSCaseInsensitiveSearch | NSNumericSearch ] = = NSOrderedSame ;   
NSLog (@ "result:%d" ,result);    
 
//NSCaseInsensitiveSearch:不区分大小写比较 NSLiteralSearch:进行完全比较,区分大小写 NSNumericSearch:比较字符串的字符个数,而不是字符值。
 
 
/*----------------改变字符串的大小写----------------*/   
 
NSString *string1 = @ "A String" ;
NSString *string2 = @ "String" ;
NSLog (@ "string1:%@" ,[string1 uppercaseString]); //大写
NSLog (@ "string2:%@" ,[string2 lowercaseString]); //小写
NSLog (@ "string2:%@" ,[string2 capitalizedString]); //首字母大小
 
 
/*----------------在串中搜索子串----------------*/       
 
NSString *string1 = @ "This is a string" ;
NSString *string2 = @ "string" ;
NSRange range = [string1 rangeOfString:string2];
int location = range.location;
int leight = range.length;
NSString *astring = [[ NSString alloc] initWithString:[ NSString stringWithFormat:@ "Location:%i,Leight:%i" ,location,leight]];
NSLog (@ "astring:%@" ,astring);
[astring release];
 
 
/*----------------抽取子串 ----------------*/       
 
//-substringToIndex: 从字符串的开头一直截取到指定的位置,但不包括该位置的字符
NSString *string1 = @ "This is a string" ;
NSString *string2 = [string1 substringToIndex:3];
NSLog (@ "string2:%@" ,string2);
 
 
 
 
//-substringFromIndex: 以指定位置开始(包括指定位置的字符),并包括之后的全部字符
NSString *string1 = @ "This is a string" ;
NSString *string2 = [string1 substringFromIndex:3];
NSLog (@ "string2:%@" ,string2);
 
 
 
 
//-substringWithRange: //按照所给出的位置,长度,任意地从字符串中截取子串
NSString *string1 = @ "This is a string" ;
NSString *string2 = [string1 substringWithRange: NSMakeRange (0, 4)];
NSLog (@ "string2:%@" ,string2);
 
 
//扩展路径
 
NSString *Path = @ "~/NSData.txt" ;
NSString *absolutePath = [Path stringByExpandingTildeInPath];
NSLog (@ "absolutePath:%@" ,absolutePath);
NSLog (@ "Path:%@" ,[absolutePath stringByAbbreviatingWithTildeInPath]);
 
 
 
//文件扩展名
NSString *Path = @ "~/NSData.txt" ;
NSLog (@ "Extension:%@" ,[Path pathExtension]);
 
 
 
 
/*******************************************************************************************
  NSMutableString
  *******************************************************************************************/   
 
/*---------------给字符串分配容量----------------*/
//stringWithCapacity:
NSMutableString *String;
String = [ NSMutableString stringWithCapacity:40];
 
 
/*---------------在已有字符串后面添加字符----------------*/   
 
//appendString: and appendFormat:
 
NSMutableString *String1 = [[ NSMutableString alloc] initWithString:@ "This is a NSMutableString" ];
//[String1 appendString:@", I will be adding some character"];
[String1 appendFormat:[ NSString stringWithFormat:@ ", I will be adding some character" ]];
NSLog (@ "String1:%@" ,String1);
*/
 
 
/*--------在已有字符串中按照所给出范围和长度删除字符------*/   
/*
  //deleteCharactersInRange:
  NSMutableString *String1 = [[NSMutableString alloc] initWithString:@"This is a NSMutableString"];
  [String1 deleteCharactersInRange:NSMakeRange(0, 5)];
  NSLog(@"String1:%@",String1);
  
  
  
  /*--------在已有字符串后面在所指定的位置中插入给出的字符串------*/
 
//-insertString: atIndex:
NSMutableString *String1 = [[ NSMutableString alloc] initWithString:@ "This is a NSMutableString" ];
[String1 insertString:@ "Hi! " atIndex:0];
NSLog (@ "String1:%@" ,String1);
 
 
 
/*--------将已有的空符串换成其它的字符串------*/
 
//-setString:
NSMutableString *String1 = [[ NSMutableString alloc] initWithString:@ "This is a NSMutableString" ];
[String1 setString:@ "Hello Word!" ];
NSLog (@ "String1:%@" ,String1);
 
 
 
/*--------按照所给出的范围,和字符串替换的原有的字符------*/
 
//-setString:
NSMutableString *String1 = [[ NSMutableString alloc] initWithString:@ "This is a NSMutableString" ];
[String1 replaceCharactersInRange: NSMakeRange (0, 4) withString:@ "That" ];
NSLog (@ "String1:%@" ,String1);
 
 
 
/*-------------判断字符串内是否还包含别的字符串(前缀,后缀)-------------*/
//01:检查字符串是否以另一个字符串开头- (BOOL) hasPrefix: (NSString *) aString;
NSString *String1 = @ "NSStringInformation.txt" ;
[String1 hasPrefix:@ "NSString" ] = = 1 ?  NSLog (@ "YES" ) : NSLog (@ "NO" );
[String1 hasSuffix:@ ".txt" ] = = 1 ?  NSLog (@ "YES" ) : NSLog (@ "NO" );
 
//02:查找字符串某处是否包含其它字符串 - (NSRange) rangeOfString: (NSString *) aString,这一点前面在串中搜索子串用到过;
 
 
 
/*******************************************************************************************
  NSArray
  *******************************************************************************************/
 
/*---------------------------创建数组------------------------------*/
//NSArray *array = [[NSArray alloc] initWithObjects:
@ "One" ,@ "Two" ,@ "Three" ,@ "Four" , nil ];
 
self .dataArray = array;
[array release];
 
//- (unsigned) Count;数组所包含对象个数;
NSLog (@ "self.dataArray cound:%d" ,[ self .dataArray count]);
 
//- (id) objectAtIndex: (unsigned int) index;获取指定索引处的对象;
NSLog (@ "self.dataArray cound 2:%@" ,[ self .dataArray objectAtIndex:2]);
 
 
/*--------------------------从一个数组拷贝数据到另一数组(可变数级)----------------------------*/   
 
//arrayWithArray:
//NSArray *array1 = [[NSArray alloc] init];
NSMutableArray *MutableArray = [[ NSMutableArray alloc] init];
NSArray *array = [ NSArray arrayWithObjects:
                   @ "a" ,@ "b" ,@ "c" , nil ];
NSLog (@ "array:%@" ,array);
MutableArray = [ NSMutableArray arrayWithArray:array];
NSLog (@ "MutableArray:%@" ,MutableArray);
 
array1 = [ NSArray arrayWithArray:array];
NSLog (@ "array1:%@" ,array1);
 
 
//Copy
 
//id obj;
NSMutableArray *newArray = [[ NSMutableArray alloc] init];
NSArray *oldArray = [ NSArray arrayWithObjects:
                      @ "a" ,@ "b" ,@ "c" ,@ "d" ,@ "e" ,@ "f" ,@ "g" ,@ "h" , nil ];
 
NSLog (@ "oldArray:%@" ,oldArray);
for ( int i = 0; i < [oldArray count]; i++)
{       
     obj = [[oldArray objectAtIndex:i] copy ];
     [newArray addObject: obj];
}
//    
NSLog (@ "newArray:%@" , newArray);
[newArray release];
 
 
//快速枚举
 
//NSMutableArray *newArray = [[NSMutableArray alloc] init];
NSArray *oldArray = [ NSArray arrayWithObjects:
                      @ "a" ,@ "b" ,@ "c" ,@ "d" ,@ "e" ,@ "f" ,@ "g" ,@ "h" , nil ];   
NSLog (@ "oldArray:%@" ,oldArray);
 
for ( id obj in oldArray)
{
     [newArray addObject: obj];
}
//    
NSLog (@ "newArray:%@" , newArray);
[newArray release];   
 
 
//Deep copy
 
//NSMutableArray *newArray = [[NSMutableArray alloc] init];
NSArray *oldArray = [ NSArray arrayWithObjects:
                      @ "a" ,@ "b" ,@ "c" ,@ "d" ,@ "e" ,@ "f" ,@ "g" ,@ "h" , nil ];   
NSLog (@ "oldArray:%@" ,oldArray);   
newArray = ( NSMutableArray *)CFPropertyListCreateDeepCopy(kCFAllocatorDefault, (CFPropertyListRef)oldArray, kCFPropertyListMutableContainers);
NSLog (@ "newArray:%@" , newArray);
[newArray release];   
 
 
//Copy and sort
 
//NSMutableArray *newArray = [[NSMutableArray alloc] init];
NSArray *oldArray = [ NSArray arrayWithObjects:
                      @ "b" ,@ "a" ,@ "e" ,@ "d" ,@ "c" ,@ "f" ,@ "h" ,@ "g" , nil ];   
NSLog (@ "oldArray:%@" ,oldArray);
NSEnumerator *enumerator;
enumerator = [oldArray objectEnumerator];
id obj;
while(obj = [enumerator nextObject])
{
     [newArray addObject: obj];
}
[newArray sortUsingSelector: @selector (compare:)];
NSLog (@ "newArray:%@" , newArray);
[newArray release];
 
 
 
/*---------------------------切分数组------------------------------*/
 
//从字符串分割到数组- componentsSeparatedByString:
NSString *string = [[ NSString alloc] initWithString:@ "One,Two,Three,Four" ];
NSLog (@ "string:%@" ,string);   
NSArray *array = [string componentsSeparatedByString:@ "," ];
NSLog (@ "array:%@" ,array);
[string release];
 
 
//从数组合并元素到字符串- componentsJoinedByString:
NSArray *array = [[ NSArray alloc] initWithObjects:@ "One" ,@ "Two" ,@ "Three" ,@ "Four" , nil ];
NSString *string = [array componentsJoinedByString:@ "," ];
NSLog (@ "string:%@" ,string);
 
 
 
/*******************************************************************************************
  NSMutableArray
  *******************************************************************************************/
/*---------------给数组分配容量----------------*/
//NSArray *array;
array = [ NSMutableArray arrayWithCapacity:20];
 
 
 
/*--------------在数组末尾添加对象----------------*/
//- (void) addObject: (id) anObject;
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@ "One" ,@ "Two" ,@ "Three" , nil ];
[array addObject:@ "Four" ];
NSLog (@ "array:%@" ,array);
 
 
 
/*--------------删除数组中指定索引处对象----------------*/   
//-(void) removeObjectAtIndex: (unsigned) index;   
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@ "One" ,@ "Two" ,@ "Three" , nil ];
[array removeObjectAtIndex:1];
NSLog (@ "array:%@" ,array);
 
 
 
/*-------------数组枚举---------------*/   
//- (NSEnumerator *)objectEnumerator;从前向后
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@ "One" ,@ "Two" ,@ "Three" , nil ];
NSEnumerator *enumerator;
enumerator = [array objectEnumerator];
 
id thingie;
while (thingie = [enumerator nextObject]) {
     NSLog (@ "thingie:%@" ,thingie);
}
 
 
//- (NSEnumerator *)reverseObjectEnumerator;从后向前
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@ "One" ,@ "Two" ,@ "Three" , nil ];
NSEnumerator *enumerator;
enumerator = [array reverseObjectEnumerator];
 
id object;
while (object = [enumerator nextObject]) {
     NSLog (@ "object:%@" ,object);
}
 
 
//快速枚举
//NSMutableArray *array = [NSMutableArray arrayWithObjects:
@ "One" ,@ "Two" ,@ "Three" , nil ];
for ( NSString *string in array)
{
     NSLog (@ "string:%@" ,string);
}
 
 
 
/*******************************************************************************************
  NSDictionary
  *******************************************************************************************/
 
/*------------------------------------创建字典------------------------------------*/
//- (id) initWithObjectsAndKeys;
 
//NSDictionary *dictionary = [[NSDictionary alloc] initWithObjectsAndKeys:@"One",@"1",@"Two",@"2",@"Three",@"3",nil];
NSString *string = [dictionary objectForKey:@ "One" ];
NSLog (@ "string:%@" ,string);
NSLog (@ "dictionary:%@" ,dictionary);
[dictionary release];
 
 
/*******************************************************************************************
  NSMutableDictionary
  *******************************************************************************************/
 
/*------------------------------------创建可变字典------------------------------------*/   
//创建
NSMutableDictionary *dictionary = [ NSMutableDictionary dictionary];
 
//添加字典
[dictionary setObject:@ "One" forKey:@ "1" ];
[dictionary setObject:@ "Two" forKey:@ "2" ];
[dictionary setObject:@ "Three" forKey:@ "3" ];
[dictionary setObject:@ "Four" forKey:@ "4" ];
NSLog (@ "dictionary:%@" ,dictionary);
 
//删除指定的字典
[dictionary removeObjectForKey:@ "3" ];
NSLog (@ "dictionary:%@" ,dictionary);
 
 
/*******************************************************************************************
  NSValue(对任何对象进行包装)
  *******************************************************************************************/
 
/*--------------------------------将NSRect放入NSArray中------------------------------------*/   
//将NSRect放入NSArray中
NSMutableArray *array = [[ NSMutableArray alloc] init];
NSValue *value;
CGRect rect = CGRectMake(0, 0, 320, 480);   
value = [ NSValue valueWithBytes:&rect objCType: @encode (CGRect)];
[array addObject:value];
NSLog (@ "array:%@" ,array);
 
//从Array中提取
value = [array objectAtIndex:0];
[value getValue:&rect];
NSLog (@ "value:%@" ,value);
 
 
/*******************************************************************************************
  从目录搜索扩展名为jpg的文件
  *******************************************************************************************/
 
//NSFileManager *fileManager = [NSFileManager defaultManager];
NSString *home;
home = @ "../Users/" ;
 
NSDirectoryEnumerator *direnum;
direnum = [fileManager enumeratorAtPath: home];
 
NSMutableArray *files = [[ NSMutableArray alloc] init];
 
//枚举
NSString *filename;
while (filename = [direnum nextObject]) {
     if ([[filename pathExtension] hasSuffix:@ "jpg" ]){
         [files addObject:filename];
     }
}
 
//快速枚举
//for(NSString *filename in direnum)
//{
//    if([[filename pathExtension] isEqualToString:@"jpg"]){
//        [files addObject:filename];
//    }
//}
NSLog (@ "files:%@" ,files);
 
//枚举
NSEnumerator *filenum;
filenum = [files objectEnumerator];
while (filename = [filenum nextObject]) {
     NSLog (@ "filename:%@" ,filename);
}
 
//快速枚举
//for(id object in files)
//{
//    NSLog(@"object:%@",object);
//}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值