1. NSString字符串比较
void test(){
NSString *str = @"ccd";
NSString *str2 = @"bcde";
NSComparisonResult result = [str compare:str2 options:NSNumericSearch];
switch (result) {
case NSOrderedAscending:
NSLog(@"str < str2");
break;
case NSOrderedSame:
NSLog(@"str == str2");
break;
case NSOrderedDescending:
NSLog(@"str > str2");
break;
default:
break;
}
}
2. NSString前后缀检查及搜索
void test(){
NSString *url = @"http://asdfasdfasdfaasdfadsfaf";
if([url hasPrefix:@"http://"]){
NSLog(@"这是一个网址");
}else{
NSLog(@"这不是一个网址");
}
NSString *str = @"logo.txt";
if([str hasSuffix:@".png"]||[str hasSuffix:@".jpg"]||[str hasSuffix:@".jpeg"]){
NSLog(@"是图片");
}else {
NSLog(@"不是图片");
}
NSString *str = @"asitxcastdfafsadfxyz asdfasdfsadfa sadf";
NSRange range = [str rangeOfString:@"itcast"];
if (range.location != NSNotFound) {
NSLog(@"位置:%ld,长度:%ld",range.location,range.length);
}else{
NSLog(@"没有查找到");
}
}
3. NSRange 的使用
NSRange range1 = {2,5};
NSLog(@"loc = %ld,len = %ld",range1.location,range1.length);
NSRange range2;
range2.location = 1;
range2.length = 23;
NSLog(@"loc = %ld,len = %ld",range2.location,range2.length);
NSRange range3 = NSMakeRange(45, 3);
NSLog(@"loc = %ld,len = %ld",range3.location,range3.length);
4. 字符串的截取和替换
void test(){
NSString *str = @"aaaaaaabbbbbbbccccccdddddd";
NSString *newStr = [str substringFromIndex:7];
newStr = [str substringToIndex:5];
NSString *dateStr = @"2015-01-29 12:12:30";
NSRange range = {0,10};
range = NSMakeRange(11, 8);
newStr = [dateStr substringWithRange:range];
NSLog(@"%@",newStr);
}
void test2(){
NSString *str = @"<imufeng>沐风科技</imufeng>";
unsigned long loc = [str rangeOfString:@">"].location+1;
unsigned long len = [str rangeOfString:@"</"].location - loc;
NSLog(@"%ld,%ld",loc,len);
NSRange range = {loc,len};
NSString *newStr = [str substringWithRange:range];
NSLog(@"newStr = %@",newStr);
}
void test3(){
NSString *str = @"<imufeng>沐风科技</imufeng>";
NSString *newStr = [str stringByReplacingOccurrencesOfString:@"imufeng" withString:@"ios"];
str = @"http:**ios.imufeng.cn*ios*images*content_25.jpg";
newStr = [str stringByReplacingOccurrencesOfString:@"*" withString:@"/"];
str= @" http:** ios.imufeng.cn *ios*images* content_25.jpg ";
str = [str stringByReplacingOccurrencesOfString:@" " withString:@""];
newStr = [str stringByReplacingOccurrencesOfString:@"*" withString:@"/"];
NSLog(@"%@",newStr);
}
5. 字符串的其他用法
void test1(){
NSString *str = @"ios.itcast.cn";
NSLog(@"%ld",str.length);
unsigned long len = str.length;
for (int i=0; i<len; i++) {
unichar c = [str characterAtIndex:i];
printf("%c ",c);
}
}
void test2(){
int a = 23;
NSString *s0 = [NSString stringWithFormat:@"%d",a];
NSString *s1 = @"12";
NSString *s2 = @"2.3";
NSString *s3 = @"345.678";
int n1 = [s1 intValue];
NSLog(@"n1 = %d",n1*34);
float f1 = [s2 floatValue];
NSLog(@"f1 = %f",f1+3);
double d1 = [s3 doubleValue];
NSLog(@"d1 = %f",d1+3);
NSString *s4 = @"helloworld";
const char *ss = [s4 UTF8String];
printf("%s\n",ss);
char ch[]="itcast";
NSString *ocStr = [NSString stringWithUTF8String:ch];
NSLog(@"%@",ocStr);
}
void test3(){
NSString *str = @" itc ast ";
NSCharacterSet *set =[NSCharacterSet whitespaceCharacterSet];
NSString *newStr = [str stringByTrimmingCharactersInSet:set];
str= @"IOSitAcastIT";
newStr = [str stringByTrimmingCharactersInSet:[NSCharacterSet uppercaseLetterCharacterSet]];
NSLog(@"-----%@-----",newStr);
}
6. NSMutableString
void test1(){
NSString *str = @"Jack";
str = @"Rose";
NSString *newStr = [str substringToIndex:2];
NSLog(@"%@",newStr);
NSMutableString *str2 = [NSMutableString string];
[str2 appendString:@"welcome"];
[str2 appendString:@" to"];
[str2 appendString:@" itcast!"];
NSLog(@"%@",str2);
}
void test2(){
NSMutableString *str = [NSMutableString string];
[str appendString:@"xxxxx"];
int a = 10;
float f1 = 3.14;
char ch = 'x';
NSString *it = @"imufeng";
[str appendFormat:@" a = %d, f1 = %.2f,ch = %c --->%@",a,f1,ch,it];
NSRange range = {5,5};
[str deleteCharactersInRange:range];
[str insertString:@"ios" atIndex:5];
[str replaceCharactersInRange:range withString:@"zzzzz"];
NSRange range2 = [str rangeOfString:@"imufeng"];
[str replaceCharactersInRange:range2 withString:@"iosios"];
NSLog(@"%@",str);
}
-(void)test3(){
NSMutableString *str = @"xxxxx";
NSMutableString *str2 = [NSMutableString string];
[str2 appendString:@"imufeng"];
str2.string = @"xxxxxx";
NSLog(@"%@",str2);
}
7. NSArray 的介绍和基本使用
-(void)test {
NSArray *array1 = [NSArray arrayWithObjects:@"1",@"2",nil,@"3",nil];
NSArray *arr2 = [NSArray arrayWithArray:array1];
NSLog(@"%@,%@",array1,arr2);
NSArray *arr3 = [[NSArray alloc] initWithObjects:@"one",@"two",@"four", nil];
NSLog(@"%@",arr3);
NSArray *arr4 = [NSArray array];
NSLog(@"%@",arr4);
}
8. NSArray 读写文件
void test(){
NSArray *arr = @[@"1",@"2",@"3",@"4",@"5",@"six",@"seven",@"8"];
BOOL isSuccess = [arr writeToFile:@"/Users/apple/Desktop/arr.xml" atomically:YES];
if (isSuccess) {
NSLog(@"写入成功!");
}
}
-(void)test2(){
NSArray *arr2 = [NSArray arrayWithContentsOfFile:@"/Users/apple/Desktop/arr.xml"];
NSLog(@"arr2 = %@",arr2);
}
9. NSArray 与字符串
/**
* 把数组元素连接成一个字符串
*/
void test(){
NSArray *arr = @[@"1",@"2",@"3",@"4",@"5",@"six",@"seven",@"8"];
NSString *str = [arr componentsJoinedByString:@"-"];
NSLog(@"%@",str);
}
void test2(){
NSString *tel = @"400-517-517";
NSArray *arr = [tel componentsSeparatedByString:@"-"];
NSLog(@"%@",arr);
}
10. NSMutableArray及基本使用
-(void)test{
NSMutableArray *arr = [NSMutableArray array];
NSMutableArray *arr2 = [[NSMutableArray alloc] initWithCapacity:5];
NSMutableArray *arr3 = [NSMutableArray arrayWithObjects:@"1",@"two",@"3", nil];
NSMutableArray *arr4 = [[NSMutableArray alloc] initWithObjects:@"1",@"3", nil];
NSArray *array = @[@"1",@"10",@"100",@"1000"];
[arr addObject:@"one"];
[arr addObject:@"one"];
[arr addObject:@"one"];
[arr addObject:@"one"];
[arr2 addObjectsFromArray:array];
NSUInteger len = arr.count;
[arr insertObject:@"1" atIndex:2];
[arr removeLastObject];
[arr removeObject:@"1"];
arr[1] = @"two";
[arr exchangeObjectAtIndex:0 withObjectAtIndex:1];
NSLog(@"len = %ld",len);
NSLog(@"%@",arr);
}
12. NSDictionary的介绍及使用
void test(){
NSDictionary *dict1 = [NSDictionary dictionaryWithObjectsAndKeys:@"zhangsan",@"zs",@"lisi",@"ls", nil];
NSDictionary *dict2 = [[NSDictionary alloc] initWithObjectsAndKeys:@"zhangsan",@"key1",@"lisi",@"key2", nil];
NSLog(@"%@",dict2);
NSLog(@"%ld",dict2.count);
NSDictionary *dict3 = @{@"zs":@"zhangsan",@"ls":@"lisi",@"zs":@"fengjie"};
NSLog(@"%@",dict3);
}
void test2(){
NSDictionary *dict3 = @{@"zs":@"zhangsan",@"ls":@"lisi",@"zs":@"fengjie"};
NSLog(@"%ld",dict3.count);
NSLog(@"%@",dict3);
NSString *s = [dict3 objectForKey:@"zs"];
NSLog(@"%@",s);
}
-(void)test3(){
NSArray *arr = @[@"1",@"2"];
NSDictionary *dict3 = @{@"zs":@"zhangsan",@"ls":@"lisi",@"arr":@"fengjie"};
[dict3 enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
NSLog(@"%@--->%@",key,obj);
}];
}
13. NSDictionary的简写及文件操作
void test(){
NSDictionary *dict3 = @{@"zs":@"zhangsan",@"ls":@"lisi",@"arr":@"fengjie"};
NSLog(@"%@",dict3[@"arr"]);
}
-(void)test2(){
NSArray *arr = @[@"1",@"2",@"one"];
NSDictionary *dict = @{@"1":@"one",@"2":@"two"};
NSDictionary *dict3 = @{@"zs":@"zhangsan",@"dict":dict,@"arr":arr};
BOOL flag = [dict3 writeToFile:@"/Users/apple/Desktop/dict.plist" atomically:YES];
if (flag) {
NSLog(@"写入成功!");
}
NSDictionary *dict4 = [NSDictionary dictionaryWithContentsOfFile:@"/Users/apple/Desktop/dict.plist"];
NSArray *arr2 = dict4[@"arr"];
NSLog(@"%@",arr2);
NSDictionary *dict5 = dict4[@"dict"];
NSLog(@"%@",dict5);
}
14.NSMutableDictionary介绍和使用
-(void)test(){
NSMutableDictionary *dict1 = [NSMutableDictionary dictionary];
NSMutableDictionary *dict2 = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"v1",@"k1",@"v2",@"k2", nil];
[dict1 setObject:@"one" forKey:@"1"];
[dict1 setObject:@"two" forKey:@"2"];
[dict1 setObject:@"three" forKey:@"3"];
[dict1 setObject:@"four" forKey:@"4"];
dict1.dictionary =@{@"zs":@"zhangsan"};
dict1[@"1"] = @"one";
dict1[@"2"] = @"one2";
dict1[@"3"] = @"one3";
dict1[@"4"] = @"one4";
[dict1 removeObjectForKey:@"3"];
NSLog(@"%@",dict1);
}