NSString 基础练习:

代码:

//
// main.m
// NSStringDemo01
//
// Created by Levi on 14-3-14.
// Copyright (c) 2014年 levi. All rights reserved.
// #import <Foundation/Foundation.h> int main(int argc, const char * argv[])
{ @autoreleasepool { /*
NSString
NSArray
NSDictionary
*/
char *s = "Hello World";
NSString *str1 = @"Hello World";
NSLog(@"s is %s str1 is %@", s, str1); //NSString *str3 = [[NSString alloc] initWithString:@"Hello World"];
/* c 类型字符串转化成 oc NSString */
NSString *str2 = [[NSString alloc] initWithCString:s encoding:NSUTF8StringEncoding];
const char *p = [str2 UTF8String];
NSLog(@"str2 is %@ p is %s", str2, p); NSString *str3 = [NSString stringWithFormat:@"%s%d%c%f", "sss", 10, 'c', 3.14];
NSLog(@"str3 is %@", str3); NSString *str4 = @"10";
int a = str4.intValue;
NSLog(@"a is %d", a);
NSLog(@"strlen is %ld", str3.length); NSString *str5 = @"wahaha";
NSString *str6 = @"wahaha";
NSLog(@"cmp : %d", [str5 isEqualToString:str6]); NSString *s1 = @"My name is";
NSString *s2 = @"Levi";
NSString *s3 = @"I am 24";
NSString *s4 = [NSString stringWithFormat:@"%@ %@ %@", s1, s2, s3];
NSLog(@"%@", s4); NSString *s5 = @"145";
NSString *s6 = @"151";
int result = [s5 compare:s6];
NSString *s7 = @"NSOoerdefadfLeviadlfkj, usidfja, dfdfddl";
NSRange range = [s7 rangeOfString:@"td"];
/* 判断条件 */
NSLog(@"NSNotFount is %ld", NSNotFound); if(range.location == NSNotFound && range.length == 0)
NSLog(@"NO found!");
else NSLog(@"location is %ld length is %ld", range.location, range.length);
NSString *s8 = @"Welcome to Bejing";
NSRange range2 = {3, 6};
NSString *s9 = [s8 substringWithRange: range2];
NSLog(@"%@", s9); NSString *s10 = [s8 substringFromIndex:s8.length-6];
NSLog(@"%@", s10); NSString *s11 = @"When I was young, I loved a girl on neighbor class.";
NSRange range3 = [s11 rangeOfString:@"was"];
NSRange range4 = [s11 rangeOfString:@"girl"];
NSRange range5;
range5.length = range4.location - range3.location + range4.length;
range5.location = range3.location;
NSString *s12 = [s11 substringWithRange:range5];
NSLog(@"%@", s12); NSString *s13 = @"Welcome to Qianfeng";
NSRange range6 = [s13 rangeOfString:@"to"];
NSString *s15 = [s13 substringToIndex:range6.location-1];
NSString *s16 = [s13 substringFromIndex:range6.location+range6.length];
NSString *s14 = [NSString stringWithFormat:@"%@%@", s15, s16];
NSLog(@"%@", s14); NSString *s17 = @"Hello world";
NSRange range7 = [s17 rangeOfString:@"Hello"];
NSRange range8 = [s17 rangeOfString:@"world"];
NSString *s19 = [s17 substringWithRange:range7];
NSString *s20 = @"qianfeng";
NSString *s21 = [s17 substringWithRange:range8];
NSString *s18 = [NSString stringWithFormat:@"%@ %@ %@", s19, s20, s21];
NSLog(@"%@", s18); NSString *s22 = @"When I was young, I loved a girl on neighbor class. ";
NSRange range9 = [s22 rangeOfString:@"young"];
NSRange range10 = [s22 rangeOfString:@"girl"];
NSString *s23 = [s22 substringToIndex:range9.location];
NSString *s24 = [s22 substringFromIndex:range10.location+range10.length];
NSString *s25 = @"teacher, I rather teaching the students";
NSString *s26 = [NSString stringWithFormat:@"%@%@%@", s23,s25,s24];
NSLog(@"%@", s26);
}
return 0;
}

  

记录OC学习的一点一滴(二)的更多相关文章

  1. 记录OC学习的一点一滴(一)

    练习代码: 代码一:(面向过程的OC) // // main.m // Class01Test01 // // Copyright (c) 2014年 levi. All rights reserve ...

  2. IOS开发-OC学习-常用功能代码片段整理

    IOS开发-OC学习-常用功能代码片段整理 IOS开发中会频繁用到一些代码段,用来实现一些固定的功能.比如在文本框中输入完后要让键盘收回,这个需要用一个简单的让文本框失去第一响应者的身份来完成.或者是 ...

  3. Linux学习之CentOS(二十二)--单用户模式下修改Root用户的密码

    在上一篇随笔里面详细讲解了Linux系统的启动过程 (Linux学习之CentOS(二十一)--Linux系统启动详解),我们知道Linux系统的启动级别一共有6种级别,通过 /etc/inittab ...

  4. Hibernate学习笔记(二)

    2016/4/22 23:19:44 Hibernate学习笔记(二) 1.1 Hibernate的持久化类状态 1.1.1 Hibernate的持久化类状态 持久化:就是一个实体类与数据库表建立了映 ...

  5. X-Cart 学习笔记(二)X-Cart框架1

    目录 X-Cart 学习笔记(一)了解和安装X-Cart X-Cart 学习笔记(二)X-Cart框架1 X-Cart 学习笔记(三)X-Cart框架2 X-Cart 学习笔记(四)常见操作 四.X- ...

  6. guava 学习笔记(二) 瓜娃(guava)的API快速熟悉使用

    guava 学习笔记(二) 瓜娃(guava)的API快速熟悉使用 1,大纲 让我们来熟悉瓜娃,并体验下它的一些API,分成如下几个部分: Introduction Guava Collection ...

  7. Dynamic CRM 2013学习笔记(二十七)无代码 复制/克隆方法

    前面介绍过二种复制/克隆方法:<Dynamic CRM 2013学习笔记(十四)复制/克隆记录> 和<Dynamic CRM 2013学习笔记(二十五)JS调用web service ...

  8. Java学习-028-JSON 之二 -- 数据读取

    JSON数据由 JSONObject.JSONArray.key_value 组合而成.通常来说,JSONObject 可以包含 JSONObject.JSONArray.key_value:JSON ...

  9. C++Primer第5版学习笔记(二)

    C++Primer第5版学习笔记(二) 第三章的重难点内容         这篇笔记记录了我在学习C++常用基本语法的学习过程,基本只记录一些重难点,对概念的描述不是一开始就详尽和准确的,而是层层深入 ...

随机推荐

  1. hdu2844 &amp; poj1742 Coin ---多重背包--两种方法

    意甲冠军:你有N种硬币,每个价格值A[i],每个号码C[i],要求. 在不超过M如果是,我们用这些硬币,有多少种付款的情况下,.那是,:1,2,3,4,5,....,M这么多的情况下,,你可以用你的硬 ...

  2. 微信消息体签名及加解密功能详细解析以及.net实现

    原文:微信消息体签名及加解密功能详细解析以及.net实现 前言 微信消息体签名及加密功能已上线,明文传输确实存在安全风险,鉴于微信的用户范围使用之广泛,必定会成为众矢之的.所以大家还是尽快接入安全模式 ...

  3. java线程API学习 线程池ThreadPoolExecutor(转)

    线程池ThreadPoolExecutor继承自ExecutorService.是jdk1.5加入的新特性,将提交执行的任务在内部线程池中的可用线程中执行. 构造函数 ThreadPoolExecut ...

  4. 十天学Linux内核之第五天---有关Linux文件系统实现的问题

    原文:十天学Linux内核之第五天---有关Linux文件系统实现的问题 有时间睡懒觉了,却还是五点多醒了,不过一直躺倒九点多才算起来,昨晚一直在弄飞凌的嵌入式开发板,有些问题没解决,自己电脑系统的问 ...

  5. interview(转)

    http://ifeve.com/ali-think-12/ http://ifeve.com/think-in-ali-10/

  6. VS扩展开发框架

    VsSharp:一个VS扩展开发框架(上) 上篇:设计 一.引子 自2008年起开发SSMS插件SqlSharp(er)的过程中,有一天发现多数代码都大同小异,就像这样. Commands2 comm ...

  7. 更新内置flash方法[转]

    原文地址:http://bbs.theworld.cn/thread-223573-1-1.html 由于目前flash插件版本较旧,而旧版flash可能会导致崩溃,其实更新方法很简单,请看如下教程. ...

  8. 第22章 职责链模式(Chain of Responsibility)

    原文 第22章 职责链模式(Chain of Responsibility) 职责链模式 导读:职责链模式是一个既简单又复杂的设计模式,刚开始学习这个设计模式的时候光示例都看了好几遍.就为了理清里面的 ...

  9. hdu Text Reverse

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1062 单词翻转! 代码: #include <stdio.h> #include < ...

  10. iOS:Block写递归

    首先来一个 oc 的递归: - (int)sum:(int)num { ) { return num; } ]; } 写递归算法只需要记住两点即可: 1. 有一个明确的出口 2. 不满足条件出口时,自 ...