Object-C 语法 字符串 数组 字典 和常用函数 学习笔记
字符串
//取子字符串
NSString *str1=@"今天的猪肉真贵,200块一斤"; NSString *sub1=[str1 substringFromIndex:4];
NSLog(@"%@",sub1);//肉真贵,200块一斤 //区间
NSRange ran=NSMakeRange(3, 2); NSString *sub2=[str1 substringWithRange:ran];
NSLog(@"%@",sub2);//猪肉 //字符串拼接
NSString *str3=@"进能越塔送人头";
NSString *str4=@"退可挂机骂队友";
NSString *newStr=[str3 stringByAppendingString:str4]; NSLog(@"拼接的结果是%@",newStr);
//字符串替换
NSString *str5=@"iPhone6";
NSString *newstr1=[str5 stringByReplacingOccurrencesOfString:@"6" withString:@"7"];
NSLog(@"%@",newstr1);
//区间替换
NSString *newstr2=[str5 stringByReplacingCharactersInRange:NSMakeRange(1, 2) withString:@"66"];
NSLog(@"%@",newstr2); //大小写
NSString *str6=@"diaozhatian";
NSString *newstr3=[str6 uppercaseString];
NSLog(@"%@",newstr3);
newstr3=[newstr3 lowercaseString];
NSLog(@"%@",newstr3); //判断开头和结尾
NSString *webStr=@"www.jizhousoft.com";
//判断开头
BOOL r1=[webStr hasPrefix:@"www"];
NSLog(@"%d",r1);//1
//判断结尾
BOOL r2=[webStr hasSuffix:@"com"];
NSLog(@"%d",r2);//1 //是否包含
NSString *str7=@"我赵日天服了!";
BOOL r3=[str7 containsString:@"日"];
if (r3) {
NSLog(@"请文明聊天.");
NSString *new3=[str7 stringByReplacingOccurrencesOfString:@"日" withString:@"*"];
NSLog(@"%@",new3);
}else {
NSLog(@"真乖!");
}
//可变字符串 相当于 C#的 StringBuilder
NSMutableString *mStr=[NSMutableString string];
//初始化为空
// NSMutableString *mStr1=[[NSMutableString alloc] initWithCapacity:1];
[mStr appendString:@"1111"];
[mStr appendString:@"2222"];
[mStr insertString:@"666" atIndex:3];
NSLog(@"%@",mStr);
[mStr deleteCharactersInRange:NSMakeRange(3, 3)]; NSLog(@"%@",mStr);
数组
//不可变数组
NSArray *arr1=[NSArray arrayWithObjects:@"孙悟空",@"八戒",@"和尚",@"小白龙", nil];
//字面量
NSArray *arr2=@[@"孙悟空",@"八戒",@"和尚",@"小白龙"];
//数组长度
NSInteger count=[arr1 count];
NSLog(@"%ld",count); NSLog(@"%ld",[arr2 count]);
//数组中获取元素
NSString *str=[arr2 objectAtIndex:2];
NSLog(@"%@",str);
//第一个 最后一个
str=[arr2 firstObject];
NSLog(@"%@",str);
str=[arr2 lastObject];
NSLog(@"%@",str);
NSInteger indexof=[arr2 indexOfObject:@"小白龙"];
NSLog(@"%ld",indexof); //是否包含
BOOL r1=[arr1 containsObject:@"小白龙"];
NSLog(@"%d",r1);//1 //字符串分割成数组
NSString *str2=@"我勒,个,去";
NSArray *arr3=[str2 componentsSeparatedByString:@","];
NSLog(@"%@",arr3); //数组拼接成字符串
NSArray *arr4=@[@"123",@"456",@"789",@"147"];
// NSArray *arr4=[NSArray arrayWithObjects: @"123",@"456",@"789",@"147",nil]; NSLog(@"%@",[arr4 componentsJoinedByString:
@""]); //可变数组
NSMutableArray *mArr=[NSMutableArray array]; [mArr insertObject:@"张三" atIndex:0];
[mArr addObject:@"林黛玉"];
[mArr addObject:@"李四"];
for (int i=0; i<[mArr count]; i++) {
NSLog(@"%@",[mArr objectAtIndex:i]);
} // [mArr removeObjectAtIndex:0];
// [mArr removeObject:@"林黛玉"];
// for (int i=0; i<[mArr count]; i++) {
// NSLog(@"%@",[mArr objectAtIndex:i]);
// }
//数组换位
[mArr exchangeObjectAtIndex:0 withObjectAtIndex:1];
//替换
[mArr replaceObjectAtIndex:0 withObject:@"王五"];
for (int i=0; i<[mArr count]; i++) {
NSLog(@"%@",[mArr objectAtIndex:i]);
}
字典
int main(int argc, const char * argv[]) {
// insert code here...
//不可变字典
NSDictionary *dic=[NSDictionary dictionaryWithObjectsAndKeys:
@"哈士奇",@"h",
@"柯基",@"k",
@"金毛",@"j",
nil];
NSDictionary *dic1=@{@"哈士奇":@"h",
@"柯基":@"k",
@"金毛":@"j"};
//获取字典中的元素
NSString *str=[dic1 objectForKey:@"k"];
//统计个数
NSLog(@"%ld",[dic count]); //获取所有key
NSArray *arr=[dic1 allKeys]; //获取所有Value
NSArray *arrValue=[dic allValues]; //可变字典 NSMutableDictionary *mDic=[NSMutableDictionary dictionary];
[mDic setObject:@"琴女" forKey:@"q"];
[mDic setObject:@"盲僧" forKey:@"m"];
[mDic setObject:@"螳螂" forKey:@"t"];
[mDic setObject:@"淘宝" forKey:@"t"]; //移除t
[mDic removeObjectForKey:@"t"]; for (NSString *item in [mDic allValues]) {
NSLog(@"%@",item);
} return 0;
}
集合
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) {
//不可变集合
NSSet *set1=[NSSet setWithObjects:@"aa",@"22",@"dd",@"gg", nil];
//集合没有顺序.只能随机读取 而且会自动去除重复
NSLog(@"%@",set1);
//获取集合中的元素 NSLog(@"%@",[set1 anyObject]);//随机元素 //可变集合
NSMutableSet *mSet=[NSMutableSet set];
[mSet addObject:@"111"];
[mSet addObject:@"222"];
[mSet addObject:@"222"];
[mSet addObject:@"333"];
[mSet addObject:@"55"];
NSLog(@"%ld",[mSet count]);//4 去除了重复
//移除
[mSet removeObject:@"111"];
NSLog(@"%ld",[mSet count]); //计数集合
NSCountedSet *cSet=[NSCountedSet set];
[cSet addObject:@"222"];
[cSet addObject:@"222"];
[cSet addObject:@"333"];
[cSet addObject:@"333"];
[cSet addObject:@"222"];
[cSet addObject:@"111"];
[cSet addObject:@"222"];
NSLog(@"%ld",[cSet countForObject:@"222"]);//4 统计了次数 NSLog(@"%ld",[cSet count]);//3 依然去除了重复 int a=10;
int b=12;
//将基本数据类型存入数组
//先转换为引用类型 字符串
NSString *astr=[NSString stringWithFormat:@"%d",a];
NSString *bstr=[NSString stringWithFormat:@"%d",b];
//再存入数组中
NSArray *array=[NSArray arrayWithObjects:astr,bstr, nil]; //或者转换为 NSNumber
float f1=9.44;
NSNumber *n1=[NSNumber numberWithFloat:f1];
//存入数组
NSArray *array1=@[n1];
//从数组中取出
NSNumber *resultNumber=array1[0];
//读取时转换
float resultFloat=[resultNumber floatValue];
NSLog(@"%f",resultFloat); return 0;
}
视频学习地址: https://ke.qq.com/webcourse/index.html#course_id=169598&term_id=100198033&taid=833404044220030&vid=e14148936nh
Object-C 语法 字符串 数组 字典 和常用函数 学习笔记的更多相关文章
- ORACLE 常用函数学习笔记
1.字符串截取方法 --5SELECT INSTR('8.30~9.00', '~') FROM dual; --8.30SELECT SUBSTR ('8.30~9.00', 0, INSTR (' ...
- SQL SERVER 常用函数 学习笔记
1.字符串截取.字符串转数字 --Server.8.30 select SUBSTRING('SqlServer_2008',4,6) as DB, CONVERT(float,SUBSTRING(' ...
- mongodb常用命令学习笔记
mongodb常用命令学习笔记 创建数据库 use DATABASE_NAME eg: use users; 如果数据库不存在,则创建数据库,否则切换到指定数据库.要显示刚刚创建的数据库,需要向数据库 ...
- 7 种 Javascript 常用设计模式学习笔记
7 种 Javascript 常用设计模式学习笔记 由于 JS 或者前端的场景限制,并不是 23 种设计模式都常用. 有的是没有使用场景,有的模式使用场景非常少,所以只是列举 7 个常见的模式 本文的 ...
- numpy常用函数学习
目录numpy常用函数学习点乘法线型预测线性拟合裁剪.压缩和累乘相关性多项式拟合提取符号数组杂项点乘法该方法为数学方法,但是在numpy使用的时候略坑.numpy的点乘为a.dot(b)或numpy. ...
- IOS NS 字符串 数组 字典 文件 动态 静态 操作
ios 常用字符串的操作 //将NSData转化为NSString NSString* str = [[NSString alloc] initWithData:response e ...
- db2字符串截取方法及常用函数
select substr(index_code, 1, locate('-', index_code)-1) from report_data substr(str,m,n)表示从str中的m个字符 ...
- C语言字符,字符串,字节操作常用函数
strlen 这个函数是在 string.h 的头文件中定义的 它的函数原型是 size_t strlen( const char ); size_t 是一个无符号整型,是这样定义的 typedef ...
- SQL操作数据——SQL组成,查询基础语法,where,Oracle常用函数等
SQL组成 DML数据操作语言 DCL数据控制语言 DQL数据查询语言 DDL数据定义语言 查询基础语法 记录筛选 where 子句 记录筛选 where 子句 实例练习 实例练习 Select语句中 ...
随机推荐
- Linux中***配置
Ubuntu系统下: 1.执行如下命令 sudo apt install shadowsocks polipo 2.创建 shadowsocks.json 配置文件,放在你想放的位置 { " ...
- MVC部分视图的使用
用户访问的视图:Index.cshtml @{ ViewBag.Title = "Home Page"; } <div class="jumbotron" ...
- 8.10zju集训日记
今天的题目比昨天的简单,一开始自己看了一道题意比较难懂的题目,然后看到榜上有人做出的两道不同的题目,然后马上改变目标,金大佬看的题目是一道比较裸的高斯消元,基本上只要模板正确就可以对,于是很快就开始打 ...
- svg图转canvas,完全阔以的
遇到的问题:页面中存在svg画的图,也存在canvas图,在用 html2canvas 截取页面的图就导致有图画缺失,至少我需要的缺失了. 一.如果页面单纯的存在一个svg画的图,转为canvas就很 ...
- 你不得不知道的5个神奇的Docker工具
Docker社区非常活跃,每天都会推出大量有用的工具.要想持续追踪社区中发生的各项创新其实非常困难.为了帮助你,我收集了一些每天在日常工作中使用.令人感兴趣并且十分有用的Docker工具.这些工具消除 ...
- 《高性能mysql》笔记
组合索引和sql中的顺序有关 单列索引和sql中的顺序无关
- 【ACM】三点顺序
三点顺序 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 现在给你不共线的三个点A,B,C的坐标,它们一定能组成一个三角形,现在让你判断A,B,C是顺时针给出的还是逆 ...
- TCP Nagle算法以及延迟确认(即延迟回复ACK)的学习
TCP/IP协议中,无论发送多少数据,总是要在数据前面加上协议头,同时,对方接收到数据,也需要发送ACK表示确认.为了尽可能的利用网络带宽,TCP总是希望尽可能的发送足够大的数据. (一个连TCP接会 ...
- 分类模型输出y值
y=w0+w1x1+w2x2+....+wnxn coef_:存储w1,w2,...wn. intercept_:存储w0 dual_coef_*support_vectors_=coef_ (1)S ...
- Oracle基础篇--00引言
今天开始,复习oracle基础.主要是以前培训的时候的文档作为结构来梳理知识点,主要目的是把Oracle基础打的扎实点.后面要转做后台开发,或者工作中需要用到数据库知识时也不至于临时抱佛脚. 一直以来 ...