1

誰かが NSRange の場所と長さを説明できますか? この文脈で使うなら

NSRange range = [self.display.text rangeOfString:@"."];
if(range.location == NSNotFound){
self.display.text = [self.display.text stringByAppendingString:@"."];

場所は何を表し、誰かがこのコードを説明できますか. また、場所などのプロパティに関する詳細情報はどこにありますか>ヘッダーファイルでNSUIntegerとして見つけましたが、場所が実際に何をするかについては説明していません。

4

2 に答える 2

2

公式ドキュメントによると:

rangeofStringレシーバー内で特定の文字列が最初に出現する範囲を検索して返すために使用されます。

元の文字列内で最初に出現したインデックスが のlocation属性に格納されますNSRange。出現が見つからない場合、メソッドは を返しNSNotFoundます。

したがって、コードは、テストしている文字列に「.」を追加します。この文字が見つからなかった場合。

于 2012-10-09T20:00:05.780 に答える
1

locationフィールドは、NSRange の場所またはインデックスです。この場合、文字列 "." のインデックスです。元の文字列内。フィールドは、実装する範囲のlength長さです。NSRange

リファレンスドキュメントでも定義を見つけることができます。

于 2012-10-09T20:00:18.213 に答える