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. iOS之新浪微博的OAuth授权

    新浪微博的OAuth授权 之前通过新浪微博开发平台写过微博的的项目,现在就开始总结下各个方面的知识点,一个是为了加深印象.巩固知识,另一个记录自己学习过程,希望自己在开发这条路上有所积累,为以后的道路 ...

  2. phpcms调用一个指定的栏目的url和栏目名称

    {$CATEGORY[$catid]['url']} 指定栏目URL代码 {$CATEGORY[$catid]['catname']} 指定栏目名称代码 {$CATEGORYS[41]['url']} ...

  3. Python requests模拟登录

    Python requests模拟登录 #!/usr/bin/env python # encoding: UTF-8 import json import requests # 跟urllib,ur ...

  4. IOS真机测试

    学习了两天的Android开发,我感觉Android开发跟IOS开发和.NET平台下的开发有点不同,Android开发我更觉得跟web(Html)倒是有类似的地方,都是节点标签显示的,当然个人理解,感 ...

  5. git学习(三):版本控制

    查看每次修改日志 git log 会显示每次修改的日期和相应提交的commit 版本控制 git reset --hard <版本id> 这里的id可以是HEAD^(上一个) HEAD^^ ...

  6. CodeForces 103D 分块处理

    题目链接:http://codeforces.com/problemset/problem/103/D 题意:给定一个长度为n的序列.然后q个询问.每个询问为(a,b),表示从序列第a项开始每b项的加 ...

  7. Sharepoint+Office Infopath+快速搭建问卷调查系统

    项目背景 要开发供公司内部使用的N多个在线调查问卷,要求信息在统一的平台上方便跟踪及管理. 公司内部上了Sharepoint系统及大家习惯了使用infopath及Quick app for share ...

  8. Only Link: Inheritance and the prototype chain

    Reference: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_cha ...

  9. 【转】iOS学习之Storyboard中的UIScrollView使用自动布局

    在使用storyboard和xib时,我们经常要用到ScrollView,还有自动布局AutoLayout,但是ScrollView和AutoLayout 结合使用,相对来说有点复杂.根据实践,我说一 ...

  10. jQuery的.bind()、.live()和.delegate()之间区别

    摘要:jQuery的.bind()..live()和.delegate()之间的区别并非总是那么明显的,然而,如果我们对所有的不同之处都有清晰的理解的话,那么这将会有助于我们编写出更加简洁的代码,以及 ...