一、Foundation框架中一些常用的类

字符串型:

NSString:不可变字符串

NSMutableString:可变字符串

集合型:

1)

NSArray:OC不可变数组

NSMutableArray:可变数组

2)

NSSet:

NSMutableSet:

3)

NSDictiorary

NSMutableDictiorary

其它:

NSDate

NSObject

二、NSString和NSMutableString的使用与注意

(一)6种创建字符串的形式

(二)使用注意

(1)字符串的导入导出

(2)类方法

(三)NSMutableString的使用与注意

(四)URL补充内容

Url:资源路径

格式:协议头:/路径

网络路径协议头:http

本地文件以file为协议头

ftp为协议头,说明资源是ftp服务器上的。

(四)字符串操作补充

 #import <Foundation/Foundation.h>

 int main(int argc, const char * argv[]) {
@autoreleasepool {
// insert code here...
// NSLog(@"Hello, World!"); /*
不可变字符串
1.创建字符串
实例方法(3种)
类方法(3种)
2.不可变字符串:
统计长度(2种)
索引提取 (3种)
比较 (3种)
查照字符串位置(1种)
判断前后缀
转换数字
大小写转换
字符串提取 可变字符串
1.创建可变字符串
2.可变字符串的操作
增(3种)删(1种)改(1种)查 */ //实例方法(3种)
NSString *str1 = @"";
NSString *str2 = [[NSString alloc] initWithFormat:@"%d4567",];
// NSString *str3 = [[NSString alloc] initWithString:str2];//传的是对象 //类方法(3种)
NSString *str4 = [NSString stringWithFormat:@"Abc%@eFg",@"d"];
// NSString *str5 = [NSString stringWithString:str4]; //统计长度(2种)
NSUInteger length = [str1 length];
NSUInteger length1 = str1.length;
NSLog(@"%lu %lu",length,length1); //索引提取 (3种)
NSString *newStr1 = [str1 substringFromIndex:];
NSLog(@"%@",newStr1);
NSString *newStr2 = [str1 substringToIndex:];
NSLog(@"%@",newStr2);
NSString *newStr3 = [str1 substringWithRange:NSMakeRange(, )];
NSLog(@"%@",newStr3);

NSString *string = [[NSString alloc] initWithFormat:@"%@",@"qwert"];

unichar ch =[string characterAtIndex:2];//提取字符串中的一个字符变成字符

NSLog(@"%c",ch);


         //比较 (3种)
if ([str1 isEqualToString:str2]) {
NSLog(@"相同");
}else
NSLog(@"不相同"); if ([str1 compare:str2] == NSOrderedAscending) {
NSLog(@"str1>str2");
}
else if ([str1 compare:str2] == NSOrderedDescending)
NSLog(@"str1<str2");
else if ([str1 compare:str2] == NSOrderedSame)
NSLog(@"=="); if ([str1 caseInsensitiveCompare:str2] == NSOrderedAscending) {
NSLog(@"str1>str2");
}
else if ([str1 caseInsensitiveCompare:str2] == NSOrderedDescending)
NSLog(@"str1<str2");
else if ([str1 caseInsensitiveCompare:str2] ==NSOrderedSame)
NSLog(@"=="); // 查找字符串位置
NSRange range = [str1 rangeOfString:str2];
if (range.location != NSNotFound) {
NSLog(@"location:%lu length:%lu",range.location,range.length); } else {
NSLog(@"没找到");
} //判断前后缀(2种)
BOOL flag = [str4 hasPrefix:@"abc"];
NSLog(@"%d",flag); BOOL anotherFlag = [str4 hasSuffix:@"fg"];
NSLog(@"%d",anotherFlag); //转换数字(4种)
int number = [str1 intValue];
NSLog(@"%d",number); NSInteger number1 = [str1 intValue];
NSLog(@"%ld",number1); NSString *str6 = @"1234567.89";
double number2 = [str6 doubleValue];
NSLog(@"%lf",number2); //大小写转换
NSString *upStr = [str4 uppercaseString];
NSLog(@"%@",upStr);
NSString *lowStr = [str4 lowercaseString];
NSLog(@"%@",lowStr);
NSString *tempStr = [str4 capitalizedString];
NSLog(@"%@",tempStr); // 可变字符串
// 实例方法
NSMutableString *muStr1 = [[NSMutableString alloc]
initWithFormat:@"1%d3",]; NSMutableString *muStr2 = [[NSMutableString alloc]
initWithString:@""]; NSMutableString *muStr3 = [[NSMutableString alloc]
initWithCapacity:]; // 类方法
NSMutableString *muStr4 = [NSMutableString stringWithFormat:@"4%d6",]; NSMutableString *muStr5 = [NSMutableString stringWithString:@""]; NSMutableString *muStr6 = [NSMutableString stringWithCapacity:]; //增(3种)
[muStr1 appendFormat:@"%d",];
NSLog(@"%@",muStr1); [muStr2 appendString:@""];
NSLog(@"%@",muStr2); [muStr3 insertString:@"abcdefghijklmn" atIndex:];
NSLog(@"%@",muStr3); [muStr4 insertString:@"abcdefghijklmn" atIndex:];
NSLog(@"%@",muStr4); //删除
[muStr5 deleteCharactersInRange:NSMakeRange(, )];
NSLog(@"%@",muStr5); //改
[muStr6 replaceCharactersInRange:NSMakeRange(, ) withString:@""];
NSLog(@"%@",muStr6); [muStr5 replaceCharactersInRange:NSMakeRange(, ) withString:@"abcd"];
NSLog(@"%@",muStr5); }
return ;
}

OC Foundation框架—字符串的更多相关文章

  1. OC Foundation框架—字符串操作方法及习题

    #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...

  2. Foundation框架—字符串

    Foundation框架—字符串 一.Foundation框架中一些常用的类 字符串型: NSString:不可变字符串 NSMutableString:可变字符串 集合型: 1) NSArray:O ...

  3. 李洪强iOS之Foundation框架—字符串

    Foundation框架—字符串 一.Foundation框架中一些常用的类 字符串型: NSString:不可变字符串 NSMutableString:可变字符串 集合型: 1) NSArray:O ...

  4. OC Foundation框架—结构体

    一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框架中的数据类型,那么包含它的主头文 ...

  5. iOS - OC Foundation 框架

    前言 框架是由许多类.方法.函数和文档按照一定的逻辑组织起来的集合,以使研发程序更容易. Foundation 框架:为所有程序开发奠定基础的框架称为 Foundation 框架. Cocoa :是指 ...

  6. OC Foundation框架—集合

    Foundation框架—集合 一.NSArray和NSMutableArray (一)NSArray不可变数组 (1)NSArray的基本介绍 NSArray是OC中使用的数组,是面向对象的,以面向 ...

  7. 14.Object-C--浅谈Foundation框架字符串NSString 与NSMutableString

    OC的字符串时经常使用到的,今天我对于OC字符串做一个简单的总结,如果有错误之处,麻烦留言指正.感谢! NSString是一个不可变长度的字符串对象.表示它初始化以后,你不能改变该变量所分配的内存中的 ...

  8. [OC Foundation框架 - 20] 统计代码行数

    注意: 1.变量名和函数名不要混淆调用 2.不要对文件夹进行文件的操作,没有权限 3.递归调用注意初始化变量   // // main.m // CodeLineCount // // Created ...

  9. [OC Foundation框架 - 13] NSValue

    NSNumber能够包装基本数据类型称为OC对象,是因为继承了NSValue 包装结构体成OC对象 1.自带结构体 void value() { CGPoint point = CGPointMake ...

随机推荐

  1. django multidb --- router

    之前一篇随笔, 提到了django中怎么使用多数据库, 但是在实际工程中遇到了一个问题,就是admin指定了使用某库, 在测试环境上没问题, 当部署后(库也变动了位置), 修改一个admin的mode ...

  2. 07: Django 使用ldap登录、注销等

    目录:Django其他篇 01:Django基础篇 02:Django进阶篇 03:Django数据库操作--->Model 04: Form 验证用户数据 & 生成html 05:Mo ...

  3. Starting MySQL...The server quit without updating PID file [失败]local/mysql/data/localhost.localdomain.pid报错

    在添加命令自动补全的时候mysql启动失败 这是原配 # For advice on how to change settings please see # http://dev.mysql.com/ ...

  4. ELK之elasticsearch6.5

    官方网站:https://www.elastic.co/guide/en/elasticsearch/reference/current/rpm.html 这里采用rpm的方式安装: # wget h ...

  5. keil_4/MDK各种数据类型占用的字节数

    笔者正在学习uCOS-II,移植到ARM时考虑到数据类型的定义,但对于Keil MDK编译器的数据类型定义还是很模糊,主要就是区分不了short int.int.long 和long int占用多少字 ...

  6. 获取GetOpenFileName多选文件名

    void CWriteWnd::OpenFileDialog() { OPENFILENAME ofn; TCHAR szOpenFileNames[*MAX_PATH] = _T("&qu ...

  7. 筛选出sql 查询结果中 不包含某个字符

    select * from table1 where patindex('%关键字%' , aa) = 0 select * from table1 where charindex('关键字' , a ...

  8. eclipse 在线安装反编译插件

    打开eclipse help>install New Software…..>add Name:jd-eclipse_update_site Location:http://jd.beno ...

  9. 《剑指offer》第三十二题(分行从上到下打印二叉树)

    // 面试题32(二):分行从上到下打印二叉树 // 题目:从上到下按层打印二叉树,同一层的结点按从左到右的顺序打印,每一层 // 打印到一行. #include <cstdio> #in ...

  10. Lua中数组的学习

    --数组的大小是不固定的 --一维数组的逻辑结构是线性表索引从1开始 array1 = {"Lua", "Tutorial"} , do print(array ...