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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

字符串—NSString

發(fā)布時間:2025/4/16 编程问答 64 豆豆
生活随笔 收集整理的這篇文章主要介紹了 字符串—NSString 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

NSString是Objective-C的字符串類,用該類聲明的對象是不可變的。

字符串的創(chuàng)建:

NSString *str = @"scottdinggo";  //直接賦值

NSString *str = [NSString stringWithFormat:@"scottdinggo"];  //調用類函數(shù)賦值

?

NSString *str = [[NSString alloc] initWithString:@"scottdinggo"];  //一般不用這種方法賦值,系統(tǒng)會提示多余(redundant)

NSString *str = [NSString stringWithString:@"scottdinggo"];  //同上

?

當字符串中含有中文時,一般使用這種賦值方法:

NSString *str = [NSString stringWithCString:"scottdinggo" encoding:NSUTF8StringEncoding];

?

字符串比較(按字符對應的ASCll大小):

BOOL result = [str1 isEqualToString:str2];  //判斷str1與str2是否相等,相等返回1,否則返回0

或者 ? BOOL result = str1 == str2;

BOOL result = [str1 isGreatThan:str2];  //判斷str1是否大于str2(不包括等于),大于返回1,否則返回0

BOOL result = [str1 isLessThan:str2];  //判斷str1是否小于str2(不包括等于),小于返回1,否則返回0

?

不區(qū)分大小寫進行比較:

NSComparisonResult result = [str1 caseInsensitiveCompare:str2];  //str1 < str2 返回-1,相等返回0,大于返回1

?

字符串比較(按字母順序)

BOOL result = [str1 compare:str2] == NSOrderedSame;  //判斷兩個字符串是否相等,如果相等,返回YES,否則返回NO

BOOL result = [str1 compare:str2] == NSOrderedAscending;  //按字母順序判斷兩個字符串的大小,大于則返回YES,否則返回NO

BOOL result = [str1 compare:str2] == NSOrderedDescending;  //按字母順序判斷兩個字符串的大小,小于則返回YES,否則返回NO

?

輸出大寫或者小寫字母:

NSLog(@"%@",[str1 uppercaseString]);  //輸出大寫

NSLog(@"%@",[str1 lowercaseString]);  //輸出小寫

NSLog(@"%@",[str1 capitalizedString]);  //首字母大寫

?

NSStringEncoding(字符串編碼)

1、NSASCllStringEncoding

2、NSUTF8StringEncoding

3、NSUnicodeStringEncoding

?

Character Encoding:

計算機中用二進制字符串來表示各種信息,每一個二進制位有兩種狀態(tài)(0和1),一個字節(jié)由8個二進制位組成,可以表示256種狀態(tài),每一種狀態(tài)表示一種字符

在計算機發(fā)展初期,美國定制了一套字符編碼,弄清楚了英語字符與二進制位之間的關系,這套字符編碼就是現(xiàn)在的ASCll編碼(Amerian Standard Code For Information Interchange)

ASCll碼一共規(guī)定了128個字符的編碼,只占用了一個字節(jié)的后七位,第一位統(tǒng)一規(guī)定為0;

英語字母用一個字節(jié)的后七位就能表示全部,如果用來表示其他語言,128種狀態(tài)是不夠的

所以世界上存在多種編碼方式,同一種狀態(tài)可能表示的是不同的字符,當你要打開一個文本文件時,就必須選擇該文本文件以何種編碼方式打開,不然就會出現(xiàn)亂碼的情況

Unicode主要就是解決此類問題的,它將世界上所以的符號都納入其中,每一個符號都給予一個獨一無二的編碼

?

UTF8是Unicode實現(xiàn)方式之一,是一種變長的編碼方式

對于單字節(jié)的字符,字節(jié)的第一位設為0,后七位是這個字符的Unicode碼

對于n字節(jié)的字符,第一個字節(jié)的前n位都設為1,第n+1位設為0,后面字節(jié)的前兩位都設為10,空余的位是這個字符的Unicode碼

?

將char * 轉化為 NSString

char s[] = "scottding";

NSString *str = [NSString stringWithCString:s encoding:NSUTF8StringEncoding];

?

將NSString轉化為Char *

NSString *s = @"scottding";

const char *str = [s UTF8String];

?

從文本文件中讀取:

NSString *s = @"/Users/admin/Desktop/LeetCode/unique_paths.cpp";

NSString *str = [NSString stringWithContentsOfFile:s encoding:NSUTF8StringEncoding error:nil];

或者:

NSURL *s = [NSURL URLWithString:@"file:///Users/admin/Desktop/LeetCode/unique_paths.cpp"];

NSString *str = [NSString stringWithContentsOfURL:s encoding:NSUTF8StringEncoding error:nil];

?

求字符串長度:

[str length]  // 返回字符串str的長度

?

類型轉換:

NSString *s = @"3.14";

float f = [s floatValue];?

int d = [s intvalue];

?

把字符串轉換成字符數(shù)組:

NSString *s = @"abc abc abc";

NSArray *array = [s componentsSeparatedByString:@" "];

?

字符串截取:

NSString *str = [s substringFromIndex:3]; ? ?// 從字符串s的下表為3的位置開始截取到結尾

NSString *str = [s substringToIndex:3]; ? ? ?// 從字符串開頭截取到字符串下表為3的位置(不包括位置3的字符)

NSRange range = {3 , 4};

NSString *str = [s substringWithRange:range];  //從位置3開始,截取4個字符

?

字符串拼接:

NSString *str = [NSString stringWithFormat:@"%@%@",s1,s2];  //將字符串s1和s2拼接成一個字符串

NSString *str = [s1 stringByAppendingString:s2];  //同上

?

字符串轉換成數(shù)組:

NSArray *arrar = [s componentsSeparatedByString:@" "];  //componentsSeparatedByString ?對字符串進行分離

?

字符串查找:

NSRange range = [s rangeOfString:@"scottdinggo"];

?

去掉字符串中的空格:

NSString *str = [s stringByReplacingOccurrencesOfString:@" " withString:@""];

?

?

?

轉載于:https://www.cnblogs.com/scottdinggo/p/4508367.html

總結

以上是生活随笔為你收集整理的字符串—NSString的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 国产黄色在线 | 国产不卡毛片 | 99国产精品一区二区三区 | 欧美日韩免费高清一区色橹橹 | 国精产品一区一区三区有限公司杨 | 日韩欧美中文字幕精品 | 成人在线网站 | 免费国产一区二区 | 日韩毛片一区二区三区 | wwwxxx在线 | 免费在线一区二区 | 高清18麻豆 | 天天天干干干 | 十大黄台在线观看 | 亚洲欧美日韩电影 | 91影音| 黄色网页观看 | 香蕉久久夜色 | 羞羞免费视频 | 国产卡一卡二在线 | 久章操| 亚洲色图35p | 国产xxxx性hd极品 | 日本www高清 | 免费吃奶摸下激烈视频 | 国产免费不卡视频 | 清冷学长被爆c躁到高潮失禁 | 日韩精品一区二区三区无码专区 | 国产精品污网站 | 古代玷污糟蹋np高辣h文 | 有码视频在线观看 | 亚洲日本韩国在线 | 网友自拍咪咪爱 | 麻豆91茄子在线观看 | 人人妻人人澡人人爽久久av | 刘亦菲久久免费一区二区 | 四虎永久在线精品免费网址 | 青娱乐av | 欧美女同在线 | 秋霞成人网 | 怒海潜沙秦岭神树 | 完全免费av | 亚洲伦理自拍 | 尤物精品视频在线观看 | 午夜精品视频 | 丰满人妻一区二区三区53号 | 精品一区二区欧美 | 又白又嫩毛又多15p 超碰在线一区 | 欧美亚洲第一区 | 亚洲欧洲一区 | www.欧美在线 | 全黄一级片 | av资源新版在线天堂 | 国产成人精品综合在线观看 | 久久亚洲精精品中文字幕早川悠里 | 国产无套精品一区二区三区 | 初尝人妻少妇中文字幕 | 丝袜国产在线 | 天天操天天干天天摸 | 亚洲成人高清在线观看 | 日韩成人高清 | 国产chinasex对白videos麻豆 | 日产av在线播放 | 快射视频网站 | 国产精品成人一区二区 | 国产精品黄色av | 美女黄色免费网站 | 老地方在线观看免费动漫 | 美女网站污 | 少妇av| 亚洲综合久 | 伊人9| 国产69精品久久 | 国产成人av一区二区三区在线观看 | 97精品人妻一区二区三区香蕉 | 中文日韩 | 亚洲AV成人无码久久精品巨臀 | 亚洲成a人无码 | 亚洲男人天堂视频 | 美女的隐私免费看 | 自拍偷拍精品视频 | 亚洲一区二区日韩欧美 | 91一区二区国产 | 伊人久久精品一区二区三区 | 国产黄色视屏 | 国产激情成人 | 看欧美一级片 | 中文有码在线观看 | 在线免费观看国产 | 中文字幕人乱码中文字 | 亚洲成a人在线观看 | 少妇人妻无码专区视频 | 最近中文字幕一区二区 | 欧美成人免费一级人片100 | 不卡在线一区 | 色噜噜一区二区三区 | xxxx 国产| 国产精品12区 | 日本一级做a爱片 |