日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OC10_类的扩展

發布時間:2023/12/20 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OC10_类的扩展 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.NSDate(日期) NSData(數據) (1).獲取當前時間. NSDate *date = [NSDate date]; // NSLog輸出日期時,會打印相對應的零時區的時間 NSLog(@"%@", date);

(2).獲取任意時間. // NSTimeInterval 時間間隔 double類型. // NSTimeInterval 正 未來時間. // NSTimeInterval 負 過去時間. NSDate *anyDate = [NSDate dateWithTimeIntervalSinceNow:8 * 60 * 60]; // 打印的是零時區的時間. NSLog(@"%@", anyDate);

(3).獲取時間間隔 NSTimeInterval time = [date timeIntervalSinceDate:anyDate]; NSLog(@"%.2f", time / 60 / 60);

(4).日期格式化轉換器. // NSDateFormatter NSDateFormatter *f = [[[NSDateFormatter alloc] init] autorelease];// y 年份// M 月份// d 日期// H 小時// m 分鐘// s 秒// a AM, PM// z 時區// G AD(公元)/BC(公元前)// E 星期f.dateFormat = @"yyyy-MM-dd HH:mm:ss a z Gr EEEE";// date -> string NSString *dateStr = [f stringFromDate:date]; NSLog(@"%@", dateStr);

// string -> date NSString *string = @"2015年9月10日 10時22分10秒"; f.dateFormat = @"yyyy年MM月dd日 HH時mm分ss秒"; // HH必須大寫,有的版本只有大寫好使. NSDate *newDate = [f dateFromString:string]; NSLog(@"%@", newDate);

2.類目 (1).Category 類目/分類/類別 作用:給系統的類額外添加方法(包括一般類和系統類).main.mNSMutableArray *array= [NSMutableArray array]; [array addObject:@"a"]; [array addObject:@"b"]; [array addObject:@"c"]; [array addObject:@"d"]; for (NSInteger i = 0; i < array.count - 1; i++) {for (NSInteger j = 0; j < array.count - 1 - i; j++) {if ([array[j] compareDescending:array[j + 1]] == 1 ) {[array exchangeObjectAtIndex:j withObjectAtIndex:j + 1];}} } NSLog(@"%@", array);

新建一個Person類 Person.h // 接口 #import <Foundation/Foundation.h>@interface Person : NSObject@property(nonatomic, retain)NSString *name;- (void)sayHi;@end// 類目 類名 類目名 // 類目的聲明. @interface Person (AAA)- (void)printPerson;@endPerson.m #import "Person.h"@implementation Person(2).類目的實現 @implementation Person (AAA)- (void)printPerson {// 類目中可以調用類的屬性以及成員變量,還有方法NSLog(@"%@", self.name); }@end類目,通常需要創建一對文件 .h.m 用于給系統的類添加方法. 延展,通常直接寫在.m中 新建一個類目文件,NSString + CoCo

NSString + CoCo.h#import <Foundation/Foundation.h> // 類目 // 文件名: 類型名 + 類目名 // 類目的方法相當于寫在當前類中. // 當類目要重寫類方法時 只會執行類目中的方法. // 類目中的方法優先級比較高. @interface NSString (CoCo)// 字符串降序的方法 - (NSComparisonResult)compareDescending:(NSString *)string; @endNSString + CoCo.m#import "NSString+CoCo.h"@implementation NSString (CoCo)- (NSComparisonResult)compareDescending:(NSString *)string {// 降序方法return -[self compare:string]; }@end3.延展 (1).Extension 類的延展. 作用:管理私有方法和屬性.main.m Person *person = [[Person alloc] init]; person.name = @"heihei"; 私有屬性 外部不能訪問 只能在類內部使用; [person sayHi];新建一個Person類. person.h#import <Foundation/Foundation.h>@interface Person : NSObject@property(nonatomic, retain)NSString *name;@endperson.m #import "Person.h"// 延展 私有聲明 @interface Person () @property(nonatomic, retain) NSString *sex; // 私有屬性 @property(nonatomic, assign) NSUInteger age; @property(nonatomic, retain) NSString *hobby;// 3.私有方法聲明. - (void)Hello;@end@implementation Person// 私有方法實現. - (void)Hello {NSLog(@"你好!~"); }- (void)sayHi {NSLog(@"卡卡");// 在類的內部區調用私有方法.[self Hello]; }@end

總結

以上是生活随笔為你收集整理的OC10_类的扩展的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。