oc基础  不可变字符串的创建和使用 简介:下面都是字符串基本用法. 1.字符串的创建 //创建oc常量字符串 NSString *str=@"hello world!"; NSLog(@"%@",str); //用c语言的字符串来创建oc的字符串 char *ch="hello world C"; NSString *str2=[[NSString alloc] initWithUTF8String:ch]; NSLog(@"%@&q…
一. 类的声明和实现&规则 1.如何编写类的声明 以@interface开头 , 以@end结尾, 然后再class name对应的地方写上 事物名称, 也就是类名即可 注意: 类名的首字符必须大写 声明一个类的目的就是为了告诉系统, 我们这个类中有哪些属性和行为 OC类声明中属性只能在写@interface和@end之间的{}中 注意: 编写OC类属性的时, 建议将所有属性的名称前面都加上"_",这个是规范,记住就行了. 类名后面的 :NSObject 是为了让我们的Ipho…
OC中的基本数据类型 NSString  在64位系统下,相当于long,在非64位系统下,想当于int. CGFloat   在64位系统下,相当于double,在非64位系统之下,想当与float ------------------------------------------------------------------------------------------------------------------------ 学习方法 一.查看API 1.help -> DOcum…
OC基础 可变数组与不可变数组的使用 1.不可变数组 1.1不可变数组的创建 //实例方法 NSArray *array = [[NSArray alloc] initWithObjects:", nil]; NSLog(@"%@",array); //类方法 NSArray *array1 = [NSArray arrayWithObjects:", nil]; //实例方法 NSArray *array2 = [[NSArray alloc] initWithA…
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.有时要将一些数字数据类型的值当做对象来使用,那么就可以使用NSNumber类,它会根据这些数据的类型创建对象. 2.注意以下代码段: ... NSNumber *num1, *num2, *num3;                             //NSNumber是类 NSInteger myInt;      //NSIntege…
OC基础 可变字典与不可变字典的使用 1.不可变字典 1.1创建不可变字典 //创建字典 //注意: //1,元素个数是偶数 //2,每两个元素是一个键值对 //3,值在前,键在后 NSDictionary *dic = [[NSDictionary alloc] initWithObjectsAndKeys:",@"age", nil]; NSLog(@"%@",dic); //用一个字典来创建另外一个字典 NSDictionary *dic2 = [[…
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 17.Foundation框架的数组是有序的对象集合.一般来说这些对象元素会是同一种类型,但是也可以不同. 18.不可变数组是由NSArray类处理的,可变数组是有NSMutableArray类处理的.NSMutableArray类是NSArray类的子类. 19.NSArray类常见方法: (1).NSArray *xxx = [NSArray a…
前言 做iOS开发有3年了,从当初的小白到现在,断断续续看过很多资料,之前也写过一些博文来记录,但是感觉知识点都比较凌乱.所以最近准备抽时间把iOS开发的相关知识进行一个梳理,主要分为OC基础.UI控件.多线程.动画.网络.数据持久化.自动布局.第三方框架等几个模块进行梳理.本系列的所有博文集合参见:iOS开发知识梳理博文集.本文主要介绍 OC基础--字符串. 字符串应该是我们开发过程中用的最多的一种数据类型了,一般与后台的请求交互都跟字符串有关,不管是json串还是其他的数据格式,后台提供的绝…
1. 概要   本文描述一个通过C++可变参数模板实现C++反射机制的方法.该方法非常实用,在Nebula高性能网络框架中大量应用,实现了非常强大的动态加载动态创建功能.Nebula框架在码云的仓库地址.   C++11的新特性--可变模版参数(variadic templates)是C++11新增的最强大的特性之一,它对参数进行了高度泛化,它能表示0到任意个数.任意类型的参数.关于可变参数模板的原理和应用不是本文重点,不过通过本文中的例子也可充分了解可变参数模板是如何应用的.   熟悉Java…
m是OC源文件扩展名,入口点也是main函数,第一个OC程序: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { theme manager @autoreleasepool { NSLog(@"Hello, World!"); } return 0; } 预处理指令import会自动检验头文件有没有被包含过,防止重复包含,NSLOG是日志输出,OC字符串以@开头,自动换行…
m是OC源文件扩展名,入口点也是main函数,第一个OC程序: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { theme manager @autoreleasepool { NSLog(@"Hello, World!"); } ; } 预处理指令import会自动检验头文件有没有被包含过,防止重复包含,NSLOG是日志输出,OC字符串以@开头,自动换行,int类型的占…
字符串的介绍 字符串在任何的开发中使用都是非常频繁的 OC和Swift中字符串的区别 在OC中字符串类型时NSString,在Swift中字符串类型是String OC中字符串@"",Swift中字符串"" 使用 String 的原因 String 是一个结构体,性能更高 NSString 是一个 OC 对象,性能略差 String 支持直接遍历 Swift 提供了 String 和 NSString 之间的无缝转换 字符的定义 定义不可变字符串 let str =…
NSArray基本概念 NSArray 遍历 NSArray排序 NSArray文件读写 NSArray 与字符串 *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } a { color: #4183C4; } a.absent { color: #cc0000; } a.anchor { display: block; padding-left: 30p…
Objective-C简介 OC和C对比 第一个OC程序 面向对象思想 *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } a { color: #4183C4; } a.absent { color: #cc0000; } a.anchor { display: block; padding-left: 30px; margin-left: -30px;…
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.归档即是用某种格式把一个或多个对象保存起来,以便以后还原回来的一个过程.一般归档数据有两种方法:属性列表归档和带键值的归档. 2.使用XML属性列表进行归档: (1).Mac OS X上的应用程序使用XML属性列表(或plists)来存储诸如默认参数选择.应用程序设置和配置信息这样的一些数据.然而这些列表的归档用途是有限的,因为当某个数据结构创建…
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.浅复制即是指针赋值,复制对象的修改会影响被复制对象:深复制即是真正的对象复制,会复制出来一个副本,这个副本和原对象是完全分开的. Foundation类实现了两个复制的方法:copy和mutableCopy.copy复制出来的是一个不可变的副本,mutableCopy复制出来的是一个可变的副本. 同时注意,产生一个对象的可变副本并不要求被复制的对…
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.什么是ARC? (1).ARC全名为Automatic Reference Counting,即是自动引用计数,会自动统计内存中对象的引用数,并在适当时候自动释放对象: (2).在工程中使用ARC非常简单:只需要像往常那样编写代码,只不过永远不用写retain. release和autorelease三个关键字: (3).在使用ARC之前,需要手…
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.对于NSFileManager类,文件的路径名的标识只能是文件名或目录.每个路径名都是一个NSString对象.这个路径可以是相对路径,也可以是绝对路径. 2.绝对路径以斜线(/)开始,斜线即是根目录.特殊的代字符(~)标识用户的主目录.但是在程序中应尽量避免使用硬编码的路径名,应使用方法和函数来处理路径或文件. 3.所有对文件的操作都要通过对N…
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 19.定义一个int类型的指针: int count = 10; int *intPtr; intPtr = &count; 然后就可以引用这个指针: x = *intPtr; 带着间接寻址运算符*号才是指针的完整表达形式. 20.&号是取出它标示的变量的地址,*号是把它标示的变量的值当做地址去寻找内容. 注意指针名里面存的是地址.所…
可以直接复制代码即可运行看看结果,方便理解 //NSString //OC字符串不能用printf输出 //但是遗憾的是OC没有一个从终端读取数据的方式,需要使用scanf读取C字符串然后转换成OC的字符串 #pragma mark 字符初始化 //创建一个不可变字符串str1 值是常量字符串 //打印字符串用%@来打印 //%@还可以打印对象 NSString * str1 = @"常量字符串"; NSLog(@"%@",str1); //用字符串创建字符串 NS…
在开发的过程中难免会遇到很多的错误,可是当看到系统给出的英文时,又不知道是什么意思.所以这篇文章总结了Xcode中常见的一些英文单词及词组,可以帮助初学的人快速了解给出的提示.多练习,就肯定能基本掌握. expression:表达式 assignable:赋值variable:变量+redefinition:重复定义type:类型conflicting:冲突项invalid:无效的conversion:转换specifier:说明符indent:缩进operands:运算对象.操作数binary…
==============NSArray(不可变数组)=========== NSArray,继承自NSObject  用来管理(储存)一些有序的对象,不可变数组. 创建一个空数组 NSArray *array1=[[NSArray alloc]init];               //NSArray *array2=[NSArray array]; nil   数组结束标志 NSArray *array3=[[NSArray alloc]initWithObjects:@"rose&qu…
一.NSString:不可变字符串/NSMutableString:可变字符串 1>字符串的常用创建方式: (1)NSString *s1 = @"Chaos"; (2)NSString *s2 = [[NSString alloc] initWithFormat:@"age is %d",20]; (3)C字符串-->OC字符串 NSString *s3 = [[NSString alloc] initWithUTF8String:"Chao…
1.字符串的初始化 //字符串的初始化 NSString *str = @"Hello world!"; NSString *str2 = [[NSString alloc] initWithString:str]; NSString *str3 = [[NSString alloc] initWithUTF8String:"hello world"]; //用C的字符串创建OC的字符串对象 NSString *str4 = [[NSString alloc] in…
Python基础数据类型之字符串 一.Python如何创建字符串 在python中用引号将一些文本包起来就构成了字符串(引号可以是单引号.双引号.单三引号,双三引号,它们是完全相同的) >>> str1 = 'hello' >>> str2 = "hello" >>> str3 = '''hello''' >>> str4 = """hello""" &g…
四.OC基础--1.文档安装和方法重载, 1. 在线安装 xcode-> 系统偏好设置->DownLoads->Doucument->下载 2. 离线安装 百度xcode文档 3. 方法重载: 是指在一个类中定义多个同名的方法 在OC中没有重载 2.self和super&static, self和super: 1. self理解: 谁调用当前方法, self就代表谁. 比如: 在对象方法中,self代表的是对象, 因为只有对象才可以调用对象方法 在类方法中, self代表的…
前言 做iOS开发有3年了,从当初的小白到现在,断断续续看过很多资料,之前也写过一些博文来记录,但是感觉知识点都比较凌乱.所以最近准备抽时间把iOS开发的相关知识进行一个梳理,主要分为OC基础.UI控件.多线程.动画.网络.数据持久化.自动布局.第三方框架等几个模块进行梳理.本系列的所有博文集合参见:iOS开发知识梳理博文集.本文主要介绍 OC基础--数据类型与表达式. 一 数据类型 Objective-C是在C语言基础上拓展出的新语言,所以它是完全兼容C语言代码的,C语言中的基本数据类型如in…
string作为我们在编程当中用的最多的数据类型,同时又由于它的特殊性,怎么强调它的重要性都不为过,理解string的一些类型和存储机制,有助于我们写出正确且高效的代码. 一.string类型 1.string的类型 string类型直接继承Object类型,Object类型是引用类型,因而string类型是引用类型无疑. 我们借助VS的类视图可以看到这一点: 这意味着: (a).string类型不会在线程的堆栈中存储任何字符串,而是存储在堆上 (b).未初始时,它被设置为null PS:在内部…
/*字符串的常用方法*/ //1.通常用来把一些基本数据类型和字符串进行拼接 ; float b = 9527.0; NSString *string = [NSString stringWithFormat:@"%d%.1f",a,b]; NSLog(@"%@",string);//95279527.0 //2.字符串的长度(空格也会计算在内) NSString *string = @"今晚打老虎"; //NSLog(@"%lu&qu…
OC基础语法已经全部学完,但是这些知识只是最基础的,还有很多高级知识,这个可能需要后面慢慢的去学习才能体会到.接下来我会总结前面的OC基础语法,如果大家发现有什么不正确的地方,请指正,小弟是新生,多请OC老鸟来喷~~ 试题如下: 1.将包含以下三个字符串@“1hello“,@“2word“,@”3good“的数组改写为字典,数字部分作为key,英文部分作为value.(15) 2.建立一个数组对象,使用3个不同的方法,使其引用计数增加为4,输出这个值,然后保证内存能够正确释放.(15) 3.使用…