小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

初學(xué)ios時(shí)候String的各種用法

 plumbiossom 2014-05-14

1. 學(xué)習(xí)方法 3

2. NSString

2.1. 創(chuàng)建常量字符串。 4

2.2. 創(chuàng)建空字符串,給予賦值。 4

2.3. 使用變量初始化 4

2.4. 判斷是否包含某字符串 4

2.4.1. 檢查字符串是否以另一個(gè)字符串開頭- (BOOL) hasPrefix: (NSString *) aString; 4

2.4.2. 是否包含其它字符 5

2.5. 從文件讀取字符串:initWithContentsOfFile方法 5

2.6. 寫字符串到文件:writeToFile方法 5

2.7. 比較兩個(gè)字符串 5

2.7.1. 用C比較:strcmp函數(shù) 5

2.7.2. isEqualToString方法 6

2.7.3. compare方法(comparer返回的三種值) 6

2.7.4. NSOrderedSame判斷兩者內(nèi)容是否相同 6

2.7.5. 不考慮大小寫比較字符串1 7

2.8. 改變字符串的大小寫 7

2.9. 在串中搜索子串 7

2.10. 替換字符串 8

2.11. 分割字符串成數(shù)組 8

2.12. 字符串?dāng)?shù)組拼接成字符串 8

2.13. 抽取子串 9

2.13.1. -substringToIndex: 從字符串的開頭一直截取到指定的位置,但不包括該位置的字符 9

2.13.2. -substringFromIndex: 以指定位置開始(包括指定位置的字符),并包括之后的全部字符 9

2.13.3. -substringWithRange: //按照所給出的位置,長度,任意地從字符串中截取子串 9

2.14. 擴(kuò)展路徑 9

2.15. 文件擴(kuò)展名 10

2.16. 練習(xí)題:將文本“成績單.text”內(nèi)容加載到內(nèi)存中并按規(guī)定的格式輸出出來 10

3. NSMutableString 10

3.1. 給字符串分配容量 10

3.2. 在已有字符串后面添加字符 10

3.3. 在已有字符串中按照所給出范圍和長度刪除字符 11

3.4. 在已有字符串后面在所指定的位置中插入給出的字符串 11

3.5. 將已有的空符串換成其它的字符串 11

3.6. 按照所給出的范圍,和字符串替換的原有的字符 12

4. NSArray 12

4.1. 創(chuàng)建數(shù)組 12

4.2. 獲取指定索引處的對象; 12

4.3. 從一個(gè)數(shù)組拷貝數(shù)據(jù)到另一數(shù)組(可變數(shù)級) 13

4.4. 快速便利數(shù)組 14

4.5. Copy and sort 14

5. NSMutableArray 15

5.1. 給數(shù)組分配容量 15

5.2. 在數(shù)組末尾添加對象 15

5.3. 刪除數(shù)組中指定索引處對象 16

5.4. 數(shù)組枚舉 16

5.4.1. 從前向后 16

5.4.2. 從后向前 16

5.5. 快速枚舉 17

6. NSDictionary 17

6.1. 創(chuàng)建字典 17

7. NSMutableDictionary 18

7.1. 創(chuàng)建 18

7.2. 添加字典 18

7.3. 刪除指定的字典 18

8. NSValue(對任何對象進(jìn)行包裝) 18

8.1. 將NSRect放入NSArray中 18

8.2. 從Array中提取 19

8.3. 從目錄搜索擴(kuò)展名為jpg的文件 19

9. NSNumber 20


NSString

創(chuàng)建字符串。

    NSString *astring = @"This is a String!";

 

創(chuàng)建空字符串,給予賦值。

 

    NSString *astring = [[NSString alloc] init];

    astring = @"This is a String!";

    NSLog(@"astring:%@",astring);

  [astring release];

 

使用變量初始化

 NSString *name = @"Ivan!";

    NSString *astring = [[NSString stringWithFormat:@”My name is %@!”,name]];

    NSLog(@"astring:%@",astring);

  

 

判斷是否包含某字符串

檢查字符串是否以另一個(gè)字符串開頭- (BOOL) hasPrefix: (NSString *) aString;

    NSString *String1 = @"NSStringInformation.txt";

    [String1 hasPrefix:@"NSString"] == 1 ?  NSLog(@"YES") : NSLog(@"NO");

    [String1 hasSuffix:@".txt"] == 1 ?  NSLog(@"YES") : NSLog(@"NO");

 

是否包含其它字符

NSString *astring = [[NSString alloc] initWithString:@"This is a String!"];

Boolean contains = [astring rangeOfString:@”This”].length>0;

  

從文件讀取字符串: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];    

 

比較兩個(gè)字符串      

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判斷兩者內(nèi)容是否相同

 

    NSString *astring01 = @"This is a String!";

    NSString *astring02 = @"this is a String!";

    BOOL result = [astring01 compare:astring02] = = NSOrderedAscending;    

    NSLog(@"result:%d",result);

   

不考慮大小寫比較字符串1

    NSString *astring01 = @"this is a String!";

    NSString *astring02 = @"This is a String!";

    BOOL result = [astring01 caseInsensitiveCompare:astring02] = = NSOrderedSame;    

    NSLog(@"result:%d",result);     

 

 

改變字符串的大小寫 

 

    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];

 

 替換字符串

        NSString *astring01 = @"hello 中國";

        NSString * new = [astring01 stringByReplacingOccurrencesOfString:@”中國” withString:@"北京"];  

        NSLog(new);  

分割字符串成數(shù)組

NSString *s = @"a b d e f";

NSArray *arr = [s componentsSeparatedByString:@" "];

NSLog(@"count = %d",[arr count]);

字符串?dāng)?shù)組拼接成字符串

   NSArray *pathArray = [NSArray arrayWithObjects:@"here",  

                              @"be", @"dragons", nil];  

        NSLog(@"%@",[pathArray componentsJoinedByString:@""]);  

抽取子串     

-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);


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);

 

NSArray

 創(chuàng)建數(shù)組

    NSArray *array = [[NSArray alloc] initWithObjects:

    @"One",@"Two",@"Three",@"Four",nil];

 

    self.dataArray = array;

    [array release];

 

    //- (unsigned) Count;數(shù)組所包含對象個(gè)數(shù);

    NSLog(@"self.dataArray cound:%d",[self.dataArray count]);

 

    獲取指定索引處的對象;

    NSLog(@"self.dataArray cound 2:%@",[self.dataArray objectAtIndex:2]);

 

 

從一個(gè)數(shù)組拷貝數(shù)據(jù)到另一數(shù)組

 

    //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];

 

 

快速便利數(shù)組

 

    //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];    

 

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];


NSMutableArray

給數(shù)組分配容量

    //NSArray *array;

    array = [NSMutableArray arrayWithCapacity:20];

 

 

在數(shù)組末尾添加對象

    //- (void) addObject: (id) anObject;

    //NSMutableArray *array = [NSMutableArray arrayWithObjects:

    @"One",@"Two",@"Three",nil];

    [array addObject:@"Four"];

    NSLog(@"array:%@",array);

 

刪除數(shù)組中指定索引處對象 

    //-(void) removeObjectAtIndex: (unsigned) index;    

    //NSMutableArray *array = [NSMutableArray arrayWithObjects:

    @"One",@"Two",@"Three",nil];

    [array removeObjectAtIndex:1];

    NSLog(@"array:%@",array);

 

 

 

數(shù)組枚舉 

從前向后

    //NSMutableArray *array = [NSMutableArray arrayWithObjects:

    @"One",@"Two",@"Three",nil];

    NSEnumerator *enumerator;

    enumerator = [array objectEnumerator];

 

    id thingie;

    while (thingie = [enumerator nextObject]) {

        NSLog(@"thingie:%@",thingie);

    }

 

 

從后向前

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

創(chuàng)建字典

    //- (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];

 練習(xí)題:將文本“成績單.text”內(nèi)容加載到內(nèi)存中并按規(guī)定的格式輸出出來


NSMutableDictionary

創(chuàng)建

    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(對任何對象進(jìn)行包裝)

將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);

 

 

定義結(jié)構(gòu)體并添加到NSArray里面

typedef struct {

float real;

float imaginary;

} ImaginaryNumber;

 

ImaginaryNumber miNumber;

miNumber.real = 1.1;

miNumber.imaginary = 1.41;

 

NSValue *miValue = [NSValue value:miNumber

withObjCType:@encode(ImaginaryNumber)]; // encode using the type name

 

ImaginaryNumber miNumber2;

[miValue getValue:&miNumber2];


宏定義#define講解

NSNumber

NSNumber

+ (NSNumber *)numberWithInt:(int)value;

+ (NSNumber *)numberWithDouble:(double)value;

- (int)intValue;

- (double)doubleValue;


NSNumber可以將基本數(shù)據(jù)類型包裝起來,形成一個(gè)對象,這樣就可以給其發(fā)送消息,裝入NSArray中等等。

NSNumber * intNumber=[NSNumber numberWithInt:100];

NSNumber *floatNumber=[NSNUmber numberWithFloat:100.00];

int i=[intNumber intValue];

if([intNumber isEqualToNumber:floatNumber]) ....

NSNumber繼承NSObject ,可以使用比較 compare: isEqual等消息

NSNull

  IOS里面最小簡單的類,里面只有一個(gè)方法+(NSNull*) null;


數(shù)學(xué)常用方法

數(shù)學(xué)常量:

#define M_E         2.71828182845904523536028747135266250   // e
#define M_LOG2E     1.44269504088896340735992468100189214   // log 2e
#define M_LOG10E    0.434294481903251827651128918916605082  // log 10e
#define M_LN2       0.693147180559945309417232121458176568  // log e2
#define M_LN10      2.30258509299404568401799145468436421   // log e10
#define M_PI        3.14159265358979323846264338327950288   // pi
#define M_PI_2      1.57079632679489661923132169163975144   // pi/2
#define M_PI_4      0.785398163397448309615660845819875721  // pi/4
#define M_1_PI      0.318309886183790671537767526745028724  // 1/pi
#define M_2_PI      0.636619772367581343075535053490057448  // 2/pi
#define M_2_SQRTPI  1.12837916709551257389615890312154517   // 2/sqrt(pi)
#define M_SQRT2     1.41421356237309504880168872420969808   // sqrt(2)
#define M_SQRT1_2   0.707106781186547524400844362104849039  // 1/sqrt(2)

常用函數(shù):

指數(shù)運(yùn)算


NSLog(@"%.f", pow(3,2) ); //result 9
NSLog(@"%.f", pow(3,3) ); //result 27

開平方運(yùn)算
(計(jì)算兩點(diǎn)間的距離時(shí)用到)

NSLog(@"%.f", sqrt(16) ); //result 4
NSLog(@"%.f", sqrt(81) ); //result 9

上舍入

NSLog(@"res: %.f", ceil(3.000000000001)); //result 4
NSLog(@"res: %.f", ceil(3.00)); //result 3

下舍入


NSLog(@"res: %.f", floor(3.000000000001)); //result 3
NSLog(@"res: %.f", floor(3.9999999)); //result 3

四舍五入

NSLog(@"res: %.f", round(3.5)); //result 4
NSLog(@"res: %.f", round(3.46)); //result 3
NSLog(@"res: %.f", round(-3.5)); //NB: this one returns -4

最小值

NSLog(@"res: %.f", fmin(5,10)); //result 5

最大值

NSLog(@"res: %.f", fmax(5,10)); //result 10

絕對值

NSLog(@"res: %.f", fabs(10)); //result 10
NSLog(@"res: %.f", fabs(-10)); //result 10


NSDate

得到當(dāng)前的日期 

        NSDate *date = [NSDate date]; 

日期之間比較可用以下方法

    - (BOOL)isEqualToDate:(NSDate *)otherDate;// 與otherDate比較,相同返回YES

    - (NSDate *)earlierDate:(NSDate *)anotherDate;// 與anotherDate比較,返回較早的那個(gè)日期

    - (NSDate *)laterDate:(NSDate *)anotherDate;//與anotherDate比較,返回較晚的那個(gè)日期

將日期轉(zhuǎn)換成字符串

NSLog(@”date = %@”,[data description]);

設(shè)置日期顯示格式

       NSDateFormatter *formatter =[[[NSDateFormatter alloc] init] autorelease]; 

        [formatter setTimeStyle:NSDateFormatterFullStyle]; //設(shè)置幾種默認(rèn)的顯示效果

        [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss a"];//設(shè)置自定義的顯示效果

        NSLog([formatter stringFromDate:date]);

NSData

NSData-> NSString

NSString *aString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];

NSString->NSData

NSString *aString = @"1234abcd";

NSData *aData = [aString dataUsingEncoding: NSUTF8StringEncoding];


    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多