IOS基础 第二课

OS中的新特性

int main(int argc, const char * argv[]) {
  @autoreleasepool {
    // 从Xcode4.5开始,提供了很多的新特性

    // 1.NSNumber写法
    // 第一种写法
    NSNumber *charZ = [NSNumber numberWithChar:'Z'];
    // 这种新写法是不是很方便?当然啦!
    NSNumber *newCharZ = @'Z';
    // 打印出 90 90
    NSLog(@"%@ %@", charZ, newCharZ);

    // 同理,其它NSNumber型的都可以这么写法
    NSNumber *floatNumber = @3.14f;// flost类型
    NSNumber *doubleNumber = @3.14; // double类型
    NSNumber *longNumber = @24521L; // long类型
    NSNumber *longlongNumber = @123124214LL;
    // BOOL类型 需要大写
    NSNumber *yesNumber = @YES;
    NSNumber *noNumber = @NO;

    // 2、NSArray写法
    // 这是旧的写法
    NSArray *array = [NSArray arrayWithObjects:@"1", @"2", nil];
    // 这是新的写法,是不是很方便?
    NSArray *newArray = @[@"1", @"2"];

    // 3、NSDictionary写法
    // 这是旧的写法
    NSDictionary *dict = [[NSDictionary alloc] initWithObjectsAndKeys:
                          @"key1", @"value1",
                          @"key2", @"value2", nil];
    // 这是新的写法, 是不是很简洁了!
    NSDictionary *newDict = @{@"key1" : @"value1",
                              @"key2" : @"value2"};

    // 4、内套表达式
    // @()这是最新版本的OC语法
    // 等价于NSNumber *totalNumber = [NSNumber numberWithFloat:0.25f - 1.09f];
    NSNumber *totalNumber = @(0.25f - 1.09f);
    // 等价于NSNumber *piNumber = [NSNumber numberWithFloat:M_PI / 2];
    NSNumber *piNumber = @(M_PI / 2);

    // 5、使用property不用再手动调用@synthesize合成gettter/setter方法
    // 之前是需要这么写法的
    //@synthesize object = _object;
    // 现在较新的编译器会自动帮我们完成
  }
  return 0;
}
时间: 2024-11-04 11:30:02

IOS基础 第二课的相关文章

IOS基础 第一课

由于本周周四就已经完成了公司分配的任务,今天周五就没有什么事干了,于是突然想 把一些IOS学习的经验分享给所有后来者.高手勿扰!!!!! 另外,如果在学习过程中遇到什么问题,可以加我QQ:632840804交流,有问必答!!!! 如果转载,请注明出处!!!!! 下面不截图了,截图比较麻烦! 下面只是对没有使用过XCODE的用户有用!!! 1.打开XCODE.新建工程,如上图,选择Command Line Tool 2.Product Name: 工程的名称,这里就叫FirstCourse    

JavaScript进阶教程(第二课)第1/3页_基础知识

今天我们将学习一项很有用而且很有趣的内容:cookies - 这是用来记录访问过你的网页的人的信息.利用Cookies你能记录访问者的姓名,并且在该访问者再次访问你的站点时向他发出热情的欢迎信息.你还可以利用cookie记忆用户端的特点 - 如果访问者的所接入的网线的速度慢,cookie可以自动告诉你在给其发送网页的时候只发送尽可能少的图片内容.     只要你在合理的范围内使用cookies(不要用它探询用户的个人隐私),cookies还是相当实用得.所以我要向你们介绍cookies的工作原理

javascript asp教程第二课--转义字符_ASP基础

并非是题外话:我们在第二课中要讲到的"转义字符"看起来与我们的课程并没有关系.事实并非如此.转义字符是在 asp中使用javascript的一个完整部分.而第二课要讲的恰恰就是转义字符.没有转义字符,那么你为了 写出有效率的asp脚本将会遇到许多的困难.抱歉,下面进入正题:以下是第二课的asp脚本.还记不记得在第一课的列子中,我们怎样编写了一个html输出都在同一行的代码.转义字符允许我们增加 换行符号.下面是我们上边例子在客户端html输出页面的代码:换行符:我又在下面重新打了一行a

IOS基础学习UIButton使用详解

  UIButton按钮是IOS开发中最常用的控件,作为IOS基础学习教程知识 ,初学者需要了解其基本定义和常用设置,以便在开发在熟练运用. 第一.UIButton的定义 UIButton *button=[[UIButton buttonWithType:(UIButtonType); 能够定义的button类型有以下6种, typedef enum { UIButtonTypeCustom = 0, 自定义风格 UIButtonTypeRoundedRect, 圆角矩形 UIButtonTy

Asp.Net Web API 2第二课——CRUD操作

原文:Asp.Net Web API 2第二课--CRUD操作 Asp.Net Web API 导航   Asp.Net Web API第一课--入门http://www.cnblogs.com/aehyok/p/3432158.html 前言 CRUD代表着 Create.Read.Update.Delete,这是四个基本的数据库操作.许多HTTP服务模型也通过Rest或者Rest-like APIs实现CRUD操作.       在本教程中,我将建立一个非常简单的Web API来管理一个产品

VBScript教程 第二课在HTML页面中添加VBscript代码_vbs

VB教程 > 第二课在HTML页面中添加VBscript代码 SCRIPT 元素用于将 VBScript 代码添加到 HTML 页面中. <SCRIPT> 标记 VBScript 代码写在成对的 <SCRIPT> 标记之间.例如,以下代码为一个测试传递日期的过程: <SCRIPT LANGUAGE="VBScript"> <!--Function CanDeliver(Dt)CanDeliver = (CDate(Dt) - Now())

iOS 数据库第二。三张表不能插入数据,第一张可以,为什么

问题描述 iOS 数据库第二.三张表不能插入数据,第一张可以,为什么 (id)init { self = [super init]; if (self) { NSArray * arr = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); _filePath = [arr objectAtIndex:0]; _filePath = [_filePath stringByAppendin

iOS 基础函数解析 - Foundation Functions Reference

iOS 基础函数解析 - Foundation Functions Reference 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. Foundation Functions Referenc

iOS基础知识之@property 和 Ivar 的区别_IOS

@property 属性其实是对成员变量的一种封装.我们先大概这样理解: @property = Ivar + setter + getter Ivar Ivar可以理解为类中的一个变量,主要作用是用来保存数据的. 我们不妨来看个例子,通过下边的例子能够很清楚的解释这两个东东: 我们新建一个Person类 @interface Person : NSObject { NSString *name0; } @property(nonatomic,copy)NSString *name1; @end