NSString *urlString = [NSString stringWithFormat:@"http://www.apple.com"];
    
    // 获取字符串长度
    NSLog(@"长度:%lu", [urlString length]);

// 求子字符串
    NSLog(@"%@", [urlString substringFromIndex:4]);
    NSLog(@"urlString = %@",urlString);
// 拼接字符串
    NSLog(@"======%@", [urlString stringByAppendingString:@"1234"]);

// 替换字符串
    NSLog(@"--===-===%@", [urlString stringByReplacingOccurrencesOfString:@"www" withString:@"m"]);

// 字符串相等
    NSLog(@"-----%d", [urlString isEqualToString:@"http://www.apple.com"]);

// 字符串比较
    NSLog(@"=====%ld", [urlString compare:@"h"]);

#pragma mark - NSMutableString:可变字符串
// 拼接字符串
    [mutableString appendString:@"2234"]; // 在原有字符串的基础上进行操作
    NSLog(@"---%@", mutableString);
    
    // 插入
    [mutableString insertString:@"abcd" atIndex:0];
    NSLog(@"--==-%@", mutableString);
    
    // 删除
    [mutableString deleteCharactersInRange:range];
    NSLog(@"--=+====-%@", mutableString);
    
    // 替换
    [mutableString replaceCharactersInRange:range withString:@"www"];
    NSLog(@"--=====-%@", mutableString);
    
    // 对于NSString来说,操作的方法一般是以stringBy开头,方法有返回值,得到一个新的字符串,对于NSMutableString来说,一般操作的是自身

数组  获取数组中元素的个数, nill后面的元素不算在内

// 获取数组中对应位置的元素
  //  NSLog(@"====%@", [arry objectAtIndex:10]);
数组越界
   
   NSLog(@"---%@", [arry lastObject]);
   NSLog(@"====%@", [arry firstObject]);

#pragma mark - NSMutableArry
// 实例方法创建对象
    NSMutableArray *arry1 = [[NSMutableArray alloc] initWithObjects:@"西游记", @"红楼梦", @"三国演义", @"水浒传", nil];
    // 使用便利器创建对象
    NSMutableArray *arry2 = [NSMutableArray arrayWithObjects:@"赵云", @"马超", nil];
    NSMutableArray *arry3 = [NSMutableArray arrayWithArray:arry];
    
    // 添加元素
    [arry2 addObject:@"关羽"];
    NSLog(@"%@", arry2);
    
    // 插入
    [arry2 insertObject:@"刘备" atIndex:0];
    
    
    // 删除
    [arry2 removeObjectAtIndex:3];
    
    // 替换
    [arry2 replaceObjectAtIndex:0 withObject:@"孙尚香"];
    
    // 交换两个元素的位置
    [arry2 exchangeObjectAtIndex:0 withObjectAtIndex:2];
    
    // 遍历数组里面的元素
    for (int i = 0; i < [arry2 count]; i++) {
        NSLog(@"---%@", [arry2 objectAtIndex:i]);
    }
    // 快速枚举
    for (NSString *string in arry2) { // 在使用for 。。。in进行快速枚举的过程中不允许改变集合里面元素的个数。
        NSLog(@"%@", string);
    }

// 字符串截取
    NSArray *arry = [@"2015:08:10 17:45:00"componentsSeparatedByString:@":"];
    NSLog(@"%@", arry);

#pragma mark - NSNumber: 值对象
NSNumber *intNumber = [NSNumber numberWithInt:20];
    NSArray *arry = [NSArray arrayWithObjects:intNumber, nil];
    NSLog(@"%@", intNumber);
    NSLog(@"%d", [intNumber intValue]);  // 把值对象转换为对象
    
    
    NSNumber *number = [NSNumber numberWithInt:20];
    NSLog(@"%p, %p", intNumber, number); // 享元机制,潜在内存泄露
    
    
    NSRange rang = NSMakeRange(3, 9);
    NSValue *value1 = [NSValue valueWithRange:rang];
    NSLog(@"value = %@", value1);
    
    NSLog(@"loc = %lu", [value1 rangeValue].location);
    
    char *str = "一二三四";
    NSValue *value2 = [NSValue valueWithPointer:str];
    NSLog(@"value2 = %@", value2);
    NSLog(@"value2 = %p", [value2 pointerValue]);
    NSLog(@"----%@", NSStringFromClass([Book class])); // 把类名转换为字符串
    NSLog(@"====%@", NSStringFromRange(rang));  // 把结构体转换为字符串

OC ---- 字符串 数组 iOS学习-----细碎知识点总结的更多相关文章

  1. C语言 ---- 数组 iOS学习-----细碎知识点总结

    #pragma mark - 数组:用来存放同一数据类型的数据 // 数组的定义:类型说明符 数组名[常量表达式] = {值1, 值2, 值3...};    // 定义一个float类型的数组,用来 ...

  2. OC ---- 字典集合 iOS学习-----细碎知识点总结

    实例方法的创建 NSDictionary *wukong = [[NSDictionary alloc] initWithObjectsAndKeys:", @"age" ...

  3. C语言 ---- 指针 iOS学习-----细碎知识点总结

    内存的访问形式:1.直接访问:通过变量名进行访问.2.间接访问:先找到变量存放的地址,然后根据地址去访问对应的内存空间. 指针--- // 定义一个整形指针变量,用来存储num1在内存中的地址    ...

  4. C语言 ---- 循环分支 iOS学习-----细碎知识点总结

    #import <Foundation/Foundation.h>  // #import是OC种的导入头文件或者是系统框架的指令 // 定义了一个Season枚举类型enum Seaso ...

  5. C语言 ---- 函数 结构体 iOS学习-----细碎知识点总结

    函数的定义     返回值类型 函数名(形式参数列表) {        函数的实现     } 函数不允许嵌套定义 如果函数的定义在主调函数之后,那么要进行提前声明才能使用. // 匿名结构体,结构 ...

  6. C语言 ---- 基本数据类型和基本运算 iOS学习-----细碎知识点总结

    // 导入头文件(stdio.h),标准输入输出的头文件,#include <stdio.h> // 程序的入口int main(int argc, const char * argv[] ...

  7. oc字符串+数组+字典操作题目

    1. 判断中间目录是否存在 (10分) 比如 传入字符串 @"/home/qianfeng/oc.txt" 和 @"qianfeng" 返回:YES 传入字符串 ...

  8. IOS学习笔记48--一些常见的IOS知识点+面试题

      IOS学习笔记48--一些常见的IOS知识点+面试题   1.堆和栈什么区别? 答:管理方式:对于栈来讲,是由编译器自动管理,无需我们手工控制:对于堆来说,释放工作由程序员控制,容易产生memor ...

  9. iOS学习笔记---oc语言第四天

    字符串 数组 一.使用苹果帮助文档 学会使⽤用苹果帮助⽂文档是开发者的⼀一项技能 Inherits from 继承⾃自 Conforms to 遵循什么协议 Framework 属于哪个框架 Avai ...

随机推荐

  1. 【控制iOS7兼容iOS6 状态栏的显示不完全 简单缩写】

    #if ios7 self.automaticallyAdjustsScrollViewInsets = YES; self.edgesForExtendedLayout = UIRectEdgeNo ...

  2. nginx.conf配置文件里的upstream加入健康检查

    查看NGINX启用了那些模块: # ./nginx -V Tengine version: Tengine/ (nginx/) built by gcc (Red Hat -) (GCC) TLS S ...

  3. 四种常见的App弹窗设计,你有仔细注意观察吗?

    弹窗又称为对话框,是App与用户进行交互的常见方式之一.弹窗分为模态弹窗和非模态弹窗两种,两者的区别在于需不需要用户对其进行回应.模态弹窗会打断用户的正常操作,要求用户必须对其进行回应,否则不能继续其 ...

  4. 无废话ExtJs 入门教程十七[列表:GridPanel]

    无废话ExtJs 入门教程十七[列表:GridPanel] extjs技术交流,欢迎加群(201926085) 在Extjs中,GridPanel用于数据显示,即我们平时说的列表页.在本节中,我们先对 ...

  5. SpringMVC学习(三)整合SpringMVC和MyBatis

    工程结构 导入jar包 配置文件 applicationContext-dao.xml---配置数据源.SqlSessionFactory.mapper扫描器 applicationContext-s ...

  6. 话说IOC(DI)

    什么是IOC(DI) 书上的东东,因为说的太严谨,所以不太容易懂,其实也没那么复杂. 举几个例子: 1.文明点的:中午太热,不想出去吃饭,所以希望同事能帮忙带饭,现在有了点外卖平台,我们就可以直接在网 ...

  7. ppt - 常规策划

    1 比较图2 progress3 目标 proposal4 market leadership5 分析 - 设计 - 开发 - 实施 - 评估6 innovation7 时间区间表述8 阶梯式9 主 ...

  8. C++ 数字转换为string类型

    经常需要循环读入多组序号的图像,需要将int转换为string,简单的函数代码如下: #include <sstream>#include <string> string In ...

  9. 开发常用之在webstorm中使用cmd

      而今前端开发经常与cmd打交道,如使用个npm什么的,如果老是在ide和cmd之间切换显得比较繁琐,众多前端利器中我最喜欢的就是webstorm,而webstorm中就可以直接使用cmd,如图1, ...

  10. linux(centos)搭建SVN服务器

    安装步骤如下: 1.yum install subversion   2.输入rpm -ql subversion查看安装位置,如下图:   我们知道svn在bin目录下生成了几个二进制文件. 输入 ...