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语句中 ...
随机推荐
- C语言概述之介绍各种基本概念
第2章 C语言概述 2.1 C语言示例解释 #include #include<stdio.h> 这一条指令的作用相当于把stdio.h文件的所有内容都输入该行所在的位置. #includ ...
- vi或vim下按方向键改变方向变成ABCD这类字符
遇到这种问题肯定很恼火,按方向键改变文本的方向有时候变成输入ABCD,有时候并不是我们想要的结果 解决方法: $ echo "set nocp" >> ~/.vimrc ...
- hashcode详解--转发
序言 写这篇文章是因为在看hashMap源码时遇到有什么hashcode值,然后就去查,脑袋里面是有映像的,不就是在Object中有equals和hashcode方法嘛,这在学java基础的时候就遇到 ...
- 为什么 c++中函数模板和类模板的 声明与定义需要放到一起?
将模板的声明与定义写在一起实在很不优雅.尝试用“传统”方法,及在.h文件里声明,在.cpp文件里定义, 然后在main函数里包含.h头文件,这样会报链接错误.why!!!!!!!!!!!!! 这是因为 ...
- Linpack之HPL测试
平台信息 Description: CentOS Linux release 7.6.1810 (Core) 注意事项 安装HPL之前需要配置好: GCC/Fortran77 编译器 BLAS/CBL ...
- prototype.js
(1)$() 方法是在DOM中使用过于频繁的 document.getElementById() 方法的一个便利的简写, 就像这个DOM方法一样,这个方法返回参数传入的id的那个元素. (2)
- maya2018安装失败如何卸载重装
AUTODESK系列软件着实令人头疼,安装失败之后不能完全卸载!!!(比如maya,cad,3dsmax等).有时手动删除注册表重装之后还是会出现各种问题,每个版本的C++Runtime和.NET f ...
- Linux的page cache使用情况/命中率查看和操控
转载自宋宝华:https://blog.csdn.net/21cnbao/article/details/80458173 这里总结几个Linux文件缓存(page cache)使用情况.命中率查看的 ...
- AndroidStudio3.0的安装和配置笔记
开发Android项目要搭建开发环境.可以选择使用Eclipse安装ADT插件来开发安卓项目,也可以使用谷歌的官方IDE——AndroidStudio3.0. AndroidStudio3.0安装的具 ...
- React.js 小书 Lesson6 - 使用 JSX 描述 UI 信息
作者:胡子大哈 原文链接:http://huziketang.com/books/react/lesson6 转载请注明出处,保留原文链接和作者信息. 这一节我们通过一个简单的例子讲解 React.j ...