NSString基本使用

#import <Foundation/Foundation.h>

int main() {
//最简单的创建字符串的方式
NSString *str = @"大武汉";
NSLog(@"我在%@", str); //另一种创建字符串的方式
int age = ;
int no = ;
NSString *name = @"黄祎a";
NSString *newStr = [NSString stringWithFormat : @"My age is %i and My no is % i and My name is %@", age, no, name];
NSLog(@"---------%@", newStr); //获取字符串的长度
int size = [name length];
NSLog(@"名字的长度是%i", size);
return ;
}

类方法

#import <Foundation/Foundation.h>

@interface Person : NSObject
+ (void) test;
@end @implementation Person
+ (void) test {
NSLog(@"hello world");
}
@end int main() {
[Person test];
return ;
} /*
对象方法
以 - 开头 <只能>由对象调用
对象方法可以使用成员变量
相对而言效率低 类方法
以 + 开头 <只能>由类调用
类方法不能使用成员变量
相对而言效率高 一个类中允许出现对象方法名 = 类方法名
*/ 

self关键字

#import <Foundation/Foundation.h>

@interface Person : NSObject {
@public
int _age;
}
- (void) show;
- (void) test1;
- (void) test2;
@end @implementation Person
- (void) show {
NSLog(@"Person的年龄是%i", _age);
}
- (void) test1 {
int _age = ;
NSLog(@"Person的年龄是%i", _age);
}
- (void) test2 {
int _age = ;
NSLog(@"Person的年龄是%i", self->_age);
}
@end int main() {
Person *p = [Person new];
[p show];
[p test1];
[p test2];
return ;
} //当成员变量和局部变量同名 采取就近原则 访问的是局部变量
//用self可以访问成员变量 区分成员变量和局部变量 /** 使用细节 **/
//出现的地方: 所有OC方法中(对象方法|类方法) 不能出现在函数中
//作用: 使用'self->成员变量名'访问当前方法调用的成员变量; 使用'[self 方法名]'用来调用方法(对象方法|类方法) /** 常见错误 **/
//用self去调用函数
//类方法中使用self调用对象方法 对象方法中使用self调用类方法
//self死循环

Objective-C NSString基本使用 类方法 self关键字的更多相关文章

  1. Objective C NSString 编码成URL 特殊字符处理

    找了一下网上的教程都是使用类似以下代码,Xcode提示这个CoreFoundation不受ARC管理,所以折中的方式是添加__bridge. NSString *encodedValue = (__b ...

  2. OC的特有语法-分类Category、 类的本质、description方法、SEL、NSLog输出增强、点语法、变量作用域、@property @synthesize关键字、Id、OC语言构造方法

    一. 分类-Category 1. 基本用途:Category  分类是OC特有的语言,依赖于类. ➢ 如何在不改变原来类模型的前提下,给类扩充一些方法?有2种方式 ● 继承 ● 分类(Categor ...

  3. objective C中的字符串NSStirng常用操作

    objective C中的字符串操作 在OC中创建字符串时,一般不使用C的方法,因为C将字符串作为字符数组,所以在操作时会有很多不方便的地方,在Cocoa中NSString集成的一些方法,可以很方便的 ...

  4. IOS中把字符串加密/IOS中怎么样MD5加密/IOS中NSString分类的实现

    看完过后,你会学到: 1学习IOS开发中的分类实现, 2以及类方法的书写, 3以及字符串的MD5加密/解密. ---------------------------wolfhous---------- ...

  5. [Objective-c 基础 - 2.5] NSString

    1.NSString基本使用 使用%@占位符输出对象 ; ; NSString *str2 = [NSString stringWithFormat:@"My age is %d and n ...

  6. ios开发ios9新特性关键字学习:泛型,逆变,协变,__kindof

    一:如何去学习?都去学习什么? 1:学习优秀项目的设计思想,多问几个为什么,为什么要这么设计,这么设计的好处是什么,还能不能在优化 ,如何应用到自己的项目中 2:学习优秀项目的代码风格,代码的封装设计 ...

  7. 字符串NSString与NSMutableString常用方法

    NSString 1.初始化 NSString *str1 = @"a OC Program"; 2.初始化 NSString *str2 = [[NSString alloc] ...

  8. C#中子类对基类方法的继承、重写和隐藏

    提起子类.基类和方法继承这些概念,肯定大家都非常熟悉.毕竟,作为一门支持OOP的语言,掌握子类.基类是学习C#的基础.不过,这些概念虽然简单,但是也有一些初学者可能会遇到的坑,我们一起看看吧.   子 ...

  9. iOS9新特性之常见关键字

    /* nullable:1.怎么使用(语法) 2.什么时候使用(作用) nullable作用:可能为空 nullable 语法1 @property (nonatomic, strong, nulla ...

随机推荐

  1. 内存修改之IOS版ce

    开源工具,算法全部在内存中完成,速度比bmsq,igg快,直接搜索0也是无压力.使用c++编写,有一定的扩展能力,可以自己扩展value type和comparator. 项目地址: https:// ...

  2. sqoop 1.99.7 安装及配置

    一  下载sqoop 1.99.7 http://mirror.bit.edu.cn/apache/sqoop/1.99.7/ 二 解压安装文件 三 配置Sqoop 环境变量 最后把mysql的驱动j ...

  3. @RestController失效

    @RestController 注解失效.就是本来应该是直接返回数据.而不是去查找视图.但是去查找视图了.我这人不喜欢弄一些无用的配置文件.所以用到什么.引用什么.但是也容易犯错误.不过也好.对哪里出 ...

  4. ucos问题

    1. 在系统初始化之前,不要调用系统函数,如下: void OSRun(void) { SYSTICK_InternalInit(1); // 1ms time tick SYSTICK_IntCmd ...

  5. JSP Cookie 处理

    Cookie是存储在客户机的文本文件,它们保存了大量轨迹信息.在servlet技术基础上,JSP显然能够提供对HTTP cookie的支持. 通常有三个步骤来识别回头客: 服务器脚本发送一系列cook ...

  6. List、LinkedList、ArrayList、Vector

    目前好像写不出比较高质量的随笔,除了多看看别人写的,就是多写,做好自己可以做的 最近听的和看到的最多的一个词就是“勿忘初心”.的确不少人到了一定高度之后,就不知道该怎么做了.(包括我曾经的偶像娜姐,在 ...

  7. GIT更新一其中一个提交版本

    有一小朋友刚才SVN转到GIT,最近老是咨询怎么才svn update -rXXXXX 在git其实也不麻烦,就是git checkout的事情,不管是分支还是TAG,都会有一个HASH版本号 1. ...

  8. 20181030NOIP模拟赛T2

    WYT的刷子 WYT有一把巨大的刷子,刷子的宽度为M米,现在WYT要使用这把大刷子去粉刷有N列的栅栏(每列宽度都为1米:每列的高度单位也为米,由输入数据给出). 使用刷子的规则是: 1.与地面垂直,从 ...

  9. ubuntu网卡配置及安装ssh服务

    1.ubuntu网卡配置 1.查看网卡名称 ip a 2.进行编辑网卡配置文件 sudo vi /etc/network/interfaces 更改网卡配置文件添加内容修改内容如下:下面的enp0s3 ...

  10. linux系统基础之-----磁盘结构(基于centos7.4 1708)