//掷骰子题,掷骰子100次,输出每个号出现的次数

void one()

{

for (int i=1; i<=100; i++) {

int a = arc4random() % 6 +1;

NSLog(@"%d %d",i,a);

}

}

//输出一个字符串中每个字符出现的次数

void two()

{

NSString *str = @"hello apple";

NSMutableDictionary *dic = [NSMutableDictionary dictionary];

for (int i = 0; i < str.length; i++) {

NSRange range = [str rangeOfComposedCharacterSequenceAtIndex:i];

NSString *s = [str substringWithRange:range];

if (dic[s]) {

int count = [dic[s] intValue]+1;

dic[s] = [NSNumber numberWithInt:count];

}else{

dic[s] = @1;

}

}

NSLog(@"%@",dic);

}

//现在有一个有序的数组,要求用户输入一个整数放到数组中还保证这个数组是有序的。例如原数组为@[@1,@3,@5,@7,@9]; 插入8之后为@[@1,@3,@5,@7,@8,@9]

void three()

{

NSArray *arr = @[@1, @3, @5, @7, @9, @8];

NSArray *result = [arr sortedArrayUsingComparator:^NSComparisonResult(NSNumber *obj1, NSNumber *obj2) {

return [obj1 compare:obj2];

}];

NSLog(@"%@",result);

}

//现有如下定义的字符串: NSString *str=@“itheimaAndroid”,能对该字符串进行修改请输出删除Android后的新字符串;

void four()

{

NSString *str1 = @"itheimaAndroid";

NSString *result1 = [str1 stringByReplacingOccurrencesOfString:@"Android" withString:@""];

NSLog(@"%@",result1);

}

//求出1.2.3.4四个数,随意组成一个里面没有相同数字的三位数,总共有多少种组合方式

void five()

{

NSMutableArray *arr = [NSMutableArray array];

for (int i = 1; i <= 4; i++) {

for (int j = 1; j <= 4; j++) {

for (int k = 1; k <= 4; k++) {

if(i != j && i != k && j != k){

[arr addObject:@(i*100 + j*10 +k)];

}

}

}

}

NSLog(@"%@\n%lu", arr, arr.count);

}

//求100以内3的倍数

void six()

{

int i = 1;

NSMutableArray *arr = [NSMutableArray array];

while (i <= 100) {

if (i % 3 == 0) {

[arr addObject:@(i)];

}

i++;

}

NSLog(@"%@\n%lu", arr, arr.count);

}

//深复制,浅复制的问题,随便一个NSArray,用代码创建一个可变和一个不可变数组,他们是深复制还是浅复制

void seven()

{

NSArray *arrary = [NSArray array];

NSArray *a1 = [NSArray arrayWithArray:arrary];

NSArray *a2 = [arrary copy];

NSArray *a3 = arrary;

NSMutableArray *a4 = [NSMutableArray arrayWithArray:arrary];

NSLog(@"\n%p\n%p\n%p\n%p\n%p", arrary, a1, a2, a3, a4);

}

个方法:<1>字符串反转(比如@"123"调用方法后返回@"321");<2>计算英文字母的个数(比如@"5435abc54abc3AHJ5"调用方法后返回的是9);<3>去除字符串两端空格(比如@" 1235 45 "调用方法后返回@"1235 45")

- (NSString *)stringByReserve

{

NSMutableString *s = [NSMutableString string];

for (NSUInteger i = self.length; i > 0; i--)

{

[s appendString:[self substringWithRange:NSMakeRange(i-1, 1)]];

}

return s;

}

- (NSUInteger)chararcterCountOfString

{

NSUInteger count = 0;

for (NSUInteger i = 0; i < self.length; i ++)

{

unichar c = [self characterAtIndex:i];

if ((c<='z'&&c>='a')||(c<='Z'&&c>='A')) {

count ++;

}

}

return count;

}

- (NSString *)stringByRemovingBlank

{

return [self stringByReplacingOccurrencesOfString:@" " withString:@""];

}

@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);

Objextive-C几道小题目笔记的更多相关文章

  1. TOM大叔的几道Javascript题目与解答

    几道JS题目 之前没有深入研究js语言,最近几年前端越来越工程化,需要扎实的js基础,看到博客园上有很多大牛分享JS学习文章,幸运看到tom大叔的blog,抽时间潜心学习了其文章,遇到到其出的几道题目 ...

  2. 关于SQL的几道小题详解

    关于SQL的几道小题详解 当我们拿到题目的时候,并不是急于作答,那样会得不偿失的,而是分析思路,采用什么方法,达到什么目的,还要思考有没有简单的方法或者通用的方法等等,这样才会达到以一当十的效果,这样 ...

  3. 《编写高质量代码--Web前端开发修炼之道》读书笔记

    前言 这两周参加公司的新项目,采用封闭式开发(项目成员在会议室里开发),晚上加班到很晚,所以没时间和精力写原创博客了,今天就分享下这篇<编写高质量代码--Web前端开发修炼之道>读书笔记吧 ...

  4. JAVA关于字符串&&字符数组处理的小题目

    JAVA关于字符串&&字符数组的小题目 第二题:分析以下需求,并用代码实现 1.键盘录入一个大字符串,再录入一个小字符串 2.统计小字符串在大字符串中出现的次数 3.代码运行打印格式: ...

  5. js小题目(持续更新)

    总是感觉之前做过的问题很久没碰的话就会忘掉,于是打算专门开一个记录小题目的随笔当题典用. 目录 五种主要数据类型进行值复制 数组去重 数组去重并计数 实现clone()方法,对五种主要数据类型进行值复 ...

  6. 《软件测试自动化之道》读书笔记 之 基于反射的UI测试

    <软件测试自动化之道>读书笔记 之 基于反射的UI测试 2014-09-24 测试自动化程序的任务待测程序测试程序  启动待测程序  设置窗体的属性  获取窗体的属性  设置控件的属性  ...

  7. 《软件测试自动化之道》读书笔记 之 基于Windows的UI测试

    <软件测试自动化之道>读书笔记 之 基于Windows的UI测试 2014-09-25 测试自动化程序的任务待测程序测试程序  启动待测程序  获得待测程序主窗体的句柄  获得有名字控件的 ...

  8. 《软件测试自动化之道》读书笔记 之 底层的Web UI 测试

    <软件测试自动化之道>读书笔记 之 底层的Web UI 测试 2014-09-28 测试自动化程序的任务待测程序测试程序  启动IE并连接到这个实例  如何判断待测web程序完全加载到浏览 ...

  9. 《软件测试自动化之道》读书笔记 之 SQL 存储过程测试

    <软件测试自动化之道>读书笔记 之 SQL 存储过程测试 2014-09-28 待测程序测试程序   创建测试用例以及测试结果存储  执行T-SQL脚本  使用BCP工具导入测试用例数据  ...

随机推荐

  1. Proud Merchants(POJ 3466 01背包+排序)

    Proud Merchants Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/Others) ...

  2. 手机天猫nba项目总结

    页面逻辑: 技术统计 比赛竞猜 猜你喜欢 进入页面时,获取服务器的当前时间.然后进行页面上的每秒递增.1.每隔n秒向后台发送请求,获取最新比分信息,球队图像,球员信息.然后更改页面.2.每隔n秒向后台 ...

  3. 基于新唐M0的XXTEA加密解密算法源码

    /*-------------------------------------------------------------------------------------------------- ...

  4. C# 编写服务 Windows service

    1.编写服务教程 http://jingyan.baidu.com/article/ea24bc395e16f8da62b331e7.html 这里不多说了. 给大家一个连接,上面有详细的教程,下面说 ...

  5. app行业发展趋势

    近日,移动开放平台发布了2014年第一季度App开发行业报告.报告中对目前国内app开发者的分布情况,个人开发者和企业开发者的开发领域,相应比例以及提交应用过程中出现的问题做出统计,为如何建立一个更好 ...

  6. 使用Comparable接口的小例子

    代码: public class Student implements Comparable<Student> { private int id; private String name; ...

  7. iOS SDK原生JSON解析

    - (IBAction)touchReadButton:(id)sender { NSData *jsonData = [[NSData alloc] initWithContentsOfFile:J ...

  8. android假设重写onDraw实现一个相似TextView能够显示表情和链接的控件(一)

    先看效果图: 写一个超连接支持的对象: /**作为超连接显示的对象*/ public class LinkInfo implements Comparable<LinkInfo>{ pri ...

  9. cloudstack4.4新增功能前瞻

    cloudstack4.4.0新功能前瞻 转载请注明地址:http://blog.csdn.net/zt689/article/details/37698989 1.   cloudstack4.4. ...

  10. UVA 246 - 10-20-30 (模拟+STL)

    UVA 246 - 10-20-30 题目链接 题意:给52张的扑克堆,先从左往右发7张牌,之后连续不断从左往右发7张牌,假设有牌堆形成了下面3种情况(按顺序推断): 1.头两张+尾一张和为10或20 ...