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. hive的数据导出方式

    hive有三种导出数据的方式 >导出数据到本地 >导出数据到hdfs >导出数据到另一个表   导出数据到本地文件系统 insert overwrite local director ...

  2. CentOS7 FTP服务搭建(虚拟用户访问FTP服务)

    概述 最近在搞Oracle在Linux系统下集群,针对Linux系统,笔人也是一片空白.Liunx外部文件的传输,避免不了使用FTP服务,所以现在就整理下,CentOS7环境下,FTP服务的搭建.FT ...

  3. oracle 11g crs检测结果

    +ASM1@testdb11a /oracle/media/grid$ ./runcluvfy.sh stage -pre crsinst -n testdb11a,testdb11b -verbos ...

  4. Oracle查询实用命令

    1.设置每行的长度: SET LIN[ESIZE] 200; 2.设置分页数量: SET PAGES[IZE] 50; 3.查看表空间相关信息: select file_id, tablespace_ ...

  5. 欲望 VS 抗拒

    总有很多事情在心里酝酿许久,但真要做起来却又很抗拒. 是在害怕,还是在逃避? 从心,快乐,都是这么难.

  6. 将android模拟器上的db文件拷贝到电脑上

    1. db文件在android手机中的存储地址一般都是/data/data/packname/databases/db_file. 2.打开cmd,运行 adb shell ,使用root权限 3.通 ...

  7. zorka源码解读之Instrument实现原理

    主要用到三方面技术: beanshell来实现可扩展:告诉zorkaAgent插桩的具体需求,包括插桩的方法和值.插桩的时机.插桩追踪记录方式等. Instrument来通过代理的方式访问JVM,实现 ...

  8. HDU5942 : Just a Math Problem

    \[\begin{eqnarray*}ans&=&\sum_{i=1}^ng(i)\\&=&\sum_{i=1}^n\sum_{d|i}\mu^2(d)\\&= ...

  9. db2 游标使用

    游标一般用来迭代结果集中的行 为了在一个过程中处理一个游标的结果,需要做以下事情: 在存储过程块的开头部分 DECLARE 游标. 打开该游标. 将游标的结果取出到之前已声明的本地变量中(隐式游标处理 ...

  10. HDU1242 BFS+优先队列

    Rescue Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...