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 配合使用

你可能感兴趣的:(OC 基础 字符串和数值)