OC 基礎 字符串和數值

A -- -- > API

1、作用:幫助開發者快速了解系統類的功能

2、學會使用蘋果幫助文檔是開發者的一項技能

3、Xcode -> Help ->Documentation and API Reference

4、inherits from 繼承關系 ? Conforms to 遵循什么協議

Framework 屬于哪個框架 ? ? Availability 什么時候可用

Declared in 聲明在什么頭文件里 ? Related documents 相關文檔 ? ? ? ? Sample code 示例代碼

5、option + 鼠標左鍵 ---> Reference 超鏈接 --> 幫助文檔 ? ? ? ? ? ?command + 鼠標左鍵 --- >頭文件(類的接口部分)

6、API 與頭文件的區別 : API 詳細介紹了方法的作用以及如何使用 ? ? ? ? ? ?頭文件只是簡略的顯示方法

B ---- > 字符串簡述

1、C 語言中,字符串是由 char (ASCII 碼)字符組成

OC 中,字符串是由 unichar (Unicode )字符組成

C ---- > 初始化方法 \便利構造

stringWithFormat: ? ? ? 字面量 : @""

C ---- > NSString 常用方法

1、 獲取字符串長度 : @property ( readonly ) NSUInteger length;

2、獲取字符串中字符 : - ( unichar ) characterAtIndex : ( NSUInteger ) index

3、字符串是否相等 ?:- ( BOOL ) isEqualToString : ( NSString ) aString;

4、字符串比較

- ( NSComparisonResult )compare : ( NSString * ) string;

5、獲取子串 :- ( NSString *) subStringFromIndex : (NSUInteger ) from ;

6、拼接字符串: - ( NSString * )stringByAppendingFormat : ( NSString * ) format,...;

7、替換字符串

- ( NSString * )stringByreplacingCharactersInRange: ( NSRange ) range ?with string : ( NSString * ) replacement;

8、字符串對象轉化為 int 型

@ property ( readonly ) int intValue;

9、字符串全部大寫

@property ( readonly, copy ) NSString *uppercaseString

10、字符串全部小寫

@property ( readonly, copy ) NSString *lowercaseString

11、字符串首字母大寫

@property ( readonly, copy ) NSString *capitalizedString

12、是否以指定字符串為前綴

- ( BOOL )hasPrefix : ( NSString * ) str;

13、是否以指定字符串為后綴

- ( BOOL ) hasSuffix : ( NSString * ) str;

D ---- > NSMutableString --- >簡述

1、NSMutableString 是NSString 類的子類

2、NSMutableString 創建的字符串是一個動態可變的字符串, 可以對原字符串進行增、刪、改操作


E ---- > 可變 不可變 區別

1、不可變字符串 --- 本身不能被修改

2、對不可變字符串的修改操作, 操作的是原字符串的副本,得到的是一個新的字符串

3、可變字符串 --- 本身能被修改

4、可變字符串修改的是 原字符串 , 因此可變字符串的操作方法 ? 沒有返回值?

F ------ > NSMutableString 操作方法

1、初始化:- ( NSMutableString * )initWithCapacity : ( NSUInteger ) capacity;

Capacity --- 參數值 為 ?預估 ?的空間大小,但是會根據實際的存儲情況 , 動態的調整實際空間的大小

2、拼接字符串

?- ( void )appendFormat : ( NSString * ) format,...;

3、插入字符串

- ( void )insertString : ( NSString * ) aString atIndex : ( NSUInteger ) loc;

4、刪除字符串

- ( void ) deleteCharactersInRange : ( NSRange ) range;

5、替換字符串

?- ( void ) replaceCharactersInRange : ( NSRange ) range ?withString : ( NSString * ) aString;

6、重置字符串

- ( void )setString : ( NSString * ) aString;


F ------- > NSNumber 簡述

?作用 : 實現基本數據類型 與 OC對象類型的相互轉化

G ---- >轉換方法

1、基本數據類型通過類方法轉換為 ?NSNumber 類型

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

+ ( NSNumber * )numberWithFloat : ( float ) value;

+ ( NSNumber * ) numberWithChar : ( char ) value;

2、 NSNumber 類型轉換為基本數據類型 本類提供了屬性的 getter 方法的實現

@property ( readonly ) int intValue;

@property ( readonly ) float floatValue;

@property ( readonly ) char charValue;

H ---- > NSNumber ? 常用方法

1、對象的比較

?- ( NSComparisionResult )compare : ( NSNumber *) otherNumber;

I ----- > NSNumber 字面量 : 將 基本數據類型轉換為 NSNumber 類型

例子:NSNumber *number = @38;

或者

?int age = 18 ? ? , NSNumber *number = @(age);

J ----- > NSValue 簡述

1、完成結構體跟 對象類型的互轉

K ------ > NSValue 常用方法

1、+ ( NSValue *) valueWithRange : ( NSRange ) range;

NSPoint,NSRect,NSSize,CGSize,CGPoint,CGRect 等結構體類型轉換為 NSValue 類型的對象, 方法同上

2、NSValue 類型轉化為 NSRange 類型的結構體變量

@property ( readonly ) NSRange rangeValue


L ------ > 小結

1、可變對象通常是不可變兌現國的子類,包含父類所有方法, 并且具有對原有對象的增、刪、改操作

不可變字符串的修改方法有返回值

可變字符串你的修改方法沒有返回值

2、可變對象的增刪改都是對自身對象的操作。不可變對象的增刪改都會生成新的對象, 原對象不變

3、NSNumber NSValue 主要是 為了完成 基本數據類型,結構體 和 ?對象的互轉, 便于collection 配合使用

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容