oc--习题

1.取出符串“123-456-789-000”中的数字部分,组成一个新的字符串输出

1  NSString *str=[[NSString alloc]initWithFormat:@"123-456-789-000"];
2
3         //(1)把”-“去掉,并放在数组内  并输出
4         NSArray *arr=[str componentsSeparatedByString:@"-"];
5         NSLog(@"%@%@%@%@",[arr objectAtIndex:0],[arr objectAtIndex:1],[arr objectAtIndex:2],[arr objectAtIndex:3]);
6         //(2)用空字符代替“-“
7         NSString *newStr=[str stringByReplacingOccurrencesOfString:@"-" withString:@""];
8         NSLog(@"%@",newStr);

2.放四个十进制三位数到一个数组中,然后按从小到大排序后组成一个新的数组

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        NSMutableArray *arr=[[NSMutableArray alloc]initWithObjects:@"123",@"234",@"110",@"142", nil];
        for(int i=0;i<[arr count]-1;i++){
            for(int j=0;j<[arr count]-i-1;j++){
                NSComparisonResult result=[[arr objectAtIndex:j] compare:[arr objectAtIndex:j+1]];
                if(result==NSOrderedDescending){
                 [arr exchangeObjectAtIndex:j+1 withObjectAtIndex:j];
                }
            }
        }
        for(int i=0;i<[arr count];i++){
            NSLog(@"%@",[arr objectAtIndex:i]);
        }
    }
    return 0;
}
时间: 2024-10-05 05:04:46

oc--习题的相关文章

OC习题 -- 切分字符串 处理色值和名称 (知识点: 字典,枚举,数组,字符串)

/* 处理工程文件crayons.txt中的文本信息,文本内容是关于颜色的,每行都是一 个颜色的信息,例如:Almond #EED9C4,前?一个字符串是颜色的名称,后一 个字符串是颜?色的16进制色值,处理?文本完成如下需求: 1.使用字典管理所有的颜色,即字典中存储的是多个键值对,颜?色名称为 key,16进制颜色值(不带#)是value. 2.取出所有的key,升序排列. 3.取出所有的value,按照排序后的key排列. 4.使?用一个新的字典管理颜色,对颜色进?行分类管理,即:“A”,

OC Foundation框架—字符串操作方法及习题

1 #import <Foundation/Foundation.h> 2 3 int main(int argc, const char * argv[]) { 4 @autoreleasepool { 8 /* 9 不可变字符串 10 1.创建字符串 11 实例方法(3种) 12 类方法(3种) 13 2.不可变字符串: 14 统计长度(2种) 15 索引提取 (3种) 16 比较 (3种) 17 查照字符串位置(1种) 18 判断前后缀 19 转换数字 20 大小写转换 21 字符串提取

《C++编程思想》 第十一章 运算符重载 (习题+解答)

一.相关代码 1. /*运算符重载语法*/ /*OPOVER.cpp*/ /*这两个重载的运算符被定义为内联成员函数.对于二元运算符,单个参数是出现在运算符 右侧的那个.当一元运算符被定义为成员函数时,没有参数.成员函数被运算符左侧的对象调 用. 对于非条件运算符(条件运算符通常返回一个布尔值),如果两个参数是相同的类型,希 望返回和运算相同类型的对象或引用.如果它们不是相同类型,它作什么样的解释就取决于程 序设计者.用这种方法可以组合复杂的表达式: K += I + J ; 运算符+号产生一个

OC中面向对象2

一. 定义OC的类和创建OC的对象 接下来就在OC中模拟现实生活中的情况,创建一辆车出来.首先要有一个车子类,然后再利用车子类创建车子对象 要描述OC中的类稍微麻烦一点,分2大步骤:类的声明.类的实现(定义).跟函数类似,函数有分声明和定义 1. 类的声明 1) 代码编写 定义一个Car类,拥有2个属性:轮子数.时速,1个行为:跑 类名\属性的命名规则:标示符的规则 类名的命名规范:有意义.驼峰标识.首字母大写 #import <Foundation/Foundation.h> // 类的声明

OC中的面向对象语法3

一. set方法和get方法 1. set方法和get方法的使用场合 @public的成员可以被随意赋值,应该使用set方法和get方法来管理成员的访问(类似机场的安检.水龙头过滤,过滤掉不合理的东西),比如僵尸的生命值不能为负数 2. set方法 1) 作用:用来设置成员变量,可以在方法里面过滤掉一些不合理的值 2) 命名规范: 方法都是以set开头,而且后面跟上成员变量名,成员变量名的首字母必须大写 形参名称不要跟成员变量同名 3. get方法 1) 作用:返回对象内部的成员变量 2) 命名

黑马程序员——OC语言的面向对象

1. 面向对象和面向过程思想 OC是面向对象的,C是面向过程的.面向对象和面向过程只是解决问题的两种不同思想 1. 面向对象和面向过程的区别 1) 以用电脑听歌为例子 a) 面向过程 ? 打开电脑 ? 播放电脑中的歌曲 ? 关闭电脑 b) 面向对象(不是相亲的“对象”) ? 电脑 ◇ 开机 ◇ 播放歌曲 ◇ 关机 2) 区别分析 ? 面向过程关注的是解决问题需要哪些步骤:面向对象关注的是解决问题需要哪些对象 ? 没有开发经验很难感受到它们的区别,两种思想都能达到解决问题的目的,但是解决思路不一样

3.0 定义OC的类和创建OC的对象

接下来就在OC中模拟现实生活中的情况,创建一辆车出来.首先要有一个车子类,然后再利用车子类创建车子对象要描述OC中的类稍微麻烦一点,分2大步骤:类的声明.类的实现(定义).跟函数类似,函数有分声明和定义类的声明代码编写定义一个Car类,拥有2个属性:轮子数.时速,1个行为:跑类名\属性的命名规则:标示符的规则类名的命名规范:有意义.驼峰标识.首字母大写 1 #import <Foundation/Foundation.h> 2 // 类的声明 3 @interface Car : NSObje

iOS开发——网络编程OC篇&amp;Socket编程

Socket编程 一.网络各个协议:TCP/IP.SOCKET.HTTP等 网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层. 其中物理层.数据链路层和网络层通常被称作媒体层,是网络工程师所研究的对象: 传输层.会话层.表示层和应用层则被称作主机层,是用户所面向和关心的内容. http协议   对应于应用层 tcp协议    对应于传输层 ip协议     对应于网络层 三者本质上没有可比性.  何况HTTP协议是基于TCP连接的. TCP/IP是传输层协议,主要

数据库经典习题,

/* 数据导入: Navicat Premium Data Transfer Source Server : localhost Source Server Type : MySQL Source Server Version : 50624 Source Host : localhost Source Database : sqlexam Target Server Type : MySQL Target Server Version : 50624 File Encoding : utf-8