示例代码:
//
// main.m
// test
//
// Created by Bin Shen on 12/28/14.
// Copyright (c) 2014 Bin Shen. All rights reserved.
//
#import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
/* ---------- NSNumber ---------- */
// 创建NSNumber对象
NSNumber *monthNumber = [NSNumber numberWithInt:10];
NSNumber *lengthNumber = [[NSNumber alloc] initWithFloat:10.8];
NSLog(@"monthNumber : %@", monthNumber);
NSLog(@"lengthNumber : %@", lengthNumber);
// 还原成基本数据类型
int month = [monthNumber intValue];
float length = [lengthNumber floatValue];
NSLog(@"month : %d", month);
NSLog(@"length : %.1f", length);
/* ---------- NSString ---------- */
// 创建一个字符串常量
NSString *string1 = @"这是一个字符串常量";
NSLog(@"string1 : %@", string1);
// 创建一个空的字符串
NSString *string2 = [[NSString alloc] init];
NSString *string3 = [NSString string];
NSLog(@"string2 : %@", string2);
NSLog(@"string3 : %@", string3);
// 快速创建字符串
NSString *string4 = [[NSString alloc] initWithString:@"abc"];
NSString *string5 = [NSString stringWithString:@"xyz"];
NSLog(@"string4 : %@", string4);
NSLog(@"string5 : %@", string5);
// 创建一个格式化的字符串 堆区
NSString *string6 = [[NSString alloc] initWithFormat:@"整数: %d", 10];
NSString *string7 = [NSString stringWithFormat:@"浮点数: %f", 10.8];
NSLog(@"string6 : %@", string6);
NSLog(@"string7 : %@", string7);
// 字符串的比较
if([string4 isEqualToString:string5]) {
NSLog(@"same content");
} else {
NSLog(@"different content");
}
NSString *string8 = [NSString stringWithFormat:@"123"];
NSString *string9 = [NSString stringWithFormat:@"123"];
if([string8 isEqualToString: string9]) {
NSLog(@"same content");
} else {
NSLog(@"different content");
}
if(string8 == string9) {
NSLog(@"same pointer");
} else {
NSLog(@"different pointer");
}
// 比较字符串的大小
NSString *string10 = [[NSString alloc] initWithFormat:@"z"];
NSString *string11 = [[NSString alloc] initWithFormat:@"abcd"];
NSComparisonResult result = [string10 caseInsensitiveCompare:string11];
NSLog(@"result : %d", result);
// 求字符串的长度
NSLog(@"%d", [string11 length]);
// 字符串的转换
NSString *string12 = @"Hello World";
NSLog(@"upper : %@", [string12 uppercaseString]);
NSLog(@"lower : %@", [string12 lowercaseString]);
NSLog(@"upper : %@", [string12 capitalizedString]);
// 转换成基本数据类型
NSString *string13 = @"3.14";
float pi = [string13 floatValue];
NSLog(@"pi %.2f", pi);
// 字符串装换成数组
NSString *string14 = @"abc bcd xyz";
NSArray *array = [string14 componentsSeparatedByString:@" "];
NSLog(@"array : %@", array);
// 截取字符串
NSString *string15 = @"abcdefg";
NSString *subString1 = [string15 substringToIndex:2];
NSString *subString2 = [string15 substringFromIndex:2];
NSLog(@"subString1 : %@", subString1);
NSLog(@"subString2 : %@", subString2);
NSRange range = {4, 2};
// NSRange range;
// range.location = 4;
// range.length = 2;
NSString *subString3 = [string15 substringWithRange:range];
NSLog(@"subString3 : %@", subString3);
// 字符串的拼接
NSString *string16 = @"abc";
NSString *string17 = @"xyz";
NSString *appString1 = [[NSString alloc] initWithFormat:@"%@%@", string16, string17];
NSString *appString2 = [string16 stringByAppendingFormat:@"%@", string17];
NSString *appString3 = [string16 stringByAppendingString:string17];
NSLog(@"appString1 : %@", appString1);
NSLog(@"appString2 : %@", appString2);
NSLog(@"appString3 : %@", appString3);
// 查询字符串
NSString *link = @"abcdeftarget=_blankzyx";
NSRange range1 = [link rangeOfString:@"target=_blank"];
NSLog(@"%@", NSStringFromRange(range1));
if(range1.location != NSNotFound) {
NSLog(@"found");
}
//可变字符串
NSMutableString *mutableString1 = [[NSMutableString alloc] initWithFormat:@"abc"];
//插入
[mutableString1 insertString:@"...xyz" atIndex:3];
NSLog(@"mutableString1 : %@", mutableString1);
//替换
[mutableString1 replaceCharactersInRange:NSMakeRange(0, 3) withString:@"efg"];
NSLog(@"mutableString1 : %@", mutableString1);
//删除
[mutableString1 deleteCharactersInRange:NSMakeRange(0, 3)];
NSLog(@"mutableString1 : %@", mutableString1);
}
return 0;
}