OC 学习第二天

1. NSSting类介绍及用法

1.1 NSString常见方法。

NSString是 Objective-C 中核心处理字符串的类之一。

创建常量字符串,注意使用“@“符号。

例:
    NSString *astring = @"This is a String!";

创建空字符串,给予赋值。

例:
    NSString *string = [NSString new];
    string = @"奥巴马";

创建格式化字符串:占位符(由一个%加一个字符组成)。

例:  
    [NSString stringWithFormat:@"奥巴马%i岁了", 60];

1.2 计算NSString字符串长度

通过调用NSString类的对象方法 length 可以获得字符串的长度

例1:

size_t length = strlen(name);

printf("length = %lu\n", length);

例2:

NSString *str = @"奥巴马";

NSUInteger len = [str length];    //NSUInteger: unsigned long

NSLog(@"len = %lu", len);

2. 结构体成员变量

例:定义生日的结构体

typedef struct{
         int year;
         int month;
         int day;
         }MyDate;

定义生日:MyDate _birthday;  //此处因为结构体已经初始化为0了,再次初始化就会报错

可以逐步初始化:

p->_birthday = {1990,12,3};
         p->_birthday.year = 2014;
         p->_birthday.month = 05;
         p->_birthday.day = 12;

可以整体赋值:

MyDate de={1993,11,11};
        p->_birthday = de;

也可以强制类型转换:

p->_birthday = (Date){1986, 1, 15};

3. 对象和方法之间的参数

3.1 对象作为方法的参数

对象作为方法参数传递是地址传递,因为对象是一个指针变量。

在方法内部,可以通过对象形参,访问该对象的成员变量(该对象的成员变量的访问权限是public)。

在方法内部,可以通过对象形参,调用该对象上的方法(给这个对象发送消息)。

3.2 对象作为方法的返回值

对象可以作为方法的返回值。
    对象返回值的实质是返回指向该对象的指针,该对象是存储在堆内存中的。
    由于堆内存是由程序员管理的,所以它不会因为函数结束而被销毁。

4. 多文件开发

在工作中,通常把不同的类放到不同的文件中,每个类的声明和实现分开
   声明写在.h头文件中,
   实现写在相应的.m文件中去,
   类名是什么,文件名就是什么。

时间: 2024-11-03 21:51:06

OC 学习第二天的相关文章

iOS学习笔记---oc语言第二天

实例变量与方法 一.实例变量的可见度 二.方法 oc中的方法分两种:类方法和实例方法 类方法:只能类使用 eg:+ (id)alloc  注:类方法中不能使用实例变量 实例方法:只能对象使用,eg:- (void)sayHi iOS学习笔记---oc语言第二天

C语言零基础项目驱动式学习第二天

//BOOL 类型是一种非真即假的数据类型,取值只有YES和NO, //BOOL 其实是OC中得数据类型,在C语言中,认为非0即为真. //BOOL 类型规定的存储空间为一个字节. //    BOOL a = YES; //    BOOL b = NO; //    printf("a = %d, b = %d\n", a, b); //    int a = 15, b = 18; //    BOOL c = a > b; //    printf("c = %

Swift学习第二练——Swift项目时光电影

Swift学习第二练--Swift项目时光电影 很早以前的一个OC的练习项目,用swift重新写了一遍,因为xcode版本的更新对swift的兼容度也在不断改变,此版本适用于xcode6.1. 这个项目中,用swift将iOS官方SDK中的HTTP进行了封装,使用了swift编写的异步加载网络图片的方法.练习了用swift操作界面布局,跳转界面等的方法. 下面是封装的下载类的核心代码: private var httpConnection:NSURLConnection? class ZYHHt

OC学习16——对象归档

转载自  OC学习篇之---归档和解挡 OC中的归档就是将对象写入到一个文件中,Java中的ObjectInputStream和ObjectOutputStream来进行操作的.当然在操作的这些对象都是需要实现一个接口:Serializable,同样的OC中操作的对象也是需要实现一个协议的,后面会说到. 一.已有类型的归档和解档 首先来看一个简单的例子: 1 // 2 // main.m 3 // 33_ObjectToFile 4 // 5 // Created by jiangwei on

python学习第二天

python学习的第二天就是个灾难啊,这天被打击了,自己写的作业被否认了,不说了,写博客还是个好习惯的,要坚持下去,就不知道能坚持到什么时候.呵呵!!! 这天教的知识和第一天的知识相差不大,区别在于比第一天讲的更细了(我们是两个老师教的,风格是不一样的),这次也写那些比较细的知识点. python的简介 (1)你的程序一定要有个主文件. (2)对于python,一切事物都是对象,对象基于类创建.#似懂非懂,不过有那么点似懂. 知识点 #__divmod__ 会把两个数字相除的商和余数以元组的方式

Vim学习第二天

Vim学习第二天 1.w:   向后移动一个单词, b: 向前移动一个单词, 3w, 3b.... 2.$:  移动光标到行的末尾 , ^:  移动光标到行的第一个非空字符的位置 3.fx:  向后寻找本行中的x字符, Fx:向前寻找本行中的x字符 4.tx: 向后寻找本行中的x字符, 光标定位在x字符的前一个字符.Tx: 向前寻找本行的x字符,光标定位在x的前一个字符 5.3G:定位到第三行,1G:定位到第一行, G:定位到文件的末尾 6.:set number    显示行号, :set n

OC学习篇之---总结和学习目录

今天终于把OC的基础知识学习完了,但是这些知识只是最基础的,还有很多高级知识,这个可能需要后面慢慢的去学习才能体会到.下面就是这次学习OC的目录教程,如果大家发现有什么不正确的地方,请指正,小弟是新生,多请OC老鸟来喷~~ 1.OC学习篇之---概述 2.OC学习篇之---第一个程序HelloWorld 3.OC学习篇之---类的定义 4.OC学习篇之---类的初始化方法和点语法的使用 5.OC学习篇之---类的三大特性(封装,继承,多态) 6.OC学习篇之[email protected]关键

UI学习第二篇 (控件)

UIbutton 也是一个控件,它属于UIControl 用的最多的就是事件响应 1. //创建按钮对象 UIButton * _botton = [UIButton buttonWithType:UIButtonTypeCustom]; //设置标题 [_botton setTitle:@"按住说话" forstate:UIControlStateNormal]; [_botton setTitle:@"松开说话" forstate:UIControlStateH

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

IOS开发-OC学习-常用功能代码片段整理 IOS开发中会频繁用到一些代码段,用来实现一些固定的功能.比如在文本框中输入完后要让键盘收回,这个需要用一个简单的让文本框失去第一响应者的身份来完成.或者是在做与URL有关的功能时,需要在Info.plist中添加一段代码进而实现让网址完成从Http到Https的转换,以及其他的一些功能. 在从一个新手到逐渐学会各种功能.代码.控件.方法如何使用的过程中,也在逐渐积累一些知识,但是一次总不会把这些东西都深刻记住并完全理解.所以在这儿记录下这些东西,用来