今回は、Objective-C
で 1234
などの数値を 1,234
のように、三桁ごとにカンマで区切る方法についてです。
必須の機能ではありませんが、カンマで区切られていないと大変数字が読みづらいので追加しました。
今回参考にさせていただいた記事はこちらから。
[Swift]数字を三桁ごとにカンマ区切りにする – Qiita
https://qiita.com/ktanaka117/items/57c43c897fb7040e0980
Swift のコードなので、こちらを Objective-C に書き換えていきます。
サンプルコードはこちら。
NSString *strPrice = [カンマ区切りにしたい数字の文字列]; NSInteger intVal = [strPrice intValue]; NSNumber *number = [NSNumber numberWithInt:(int)intVal]; NSNumberFormatter *format = [[NSNumberFormatter alloc] init]; format.numberStyle = NSNumberFormatterDecimalStyle; NSLog(@"%@", [format stringFromNumber:number]);
仕様上、カンマ区切りにしたい数字を文字列にしていたので、最初に NSString
を NSNumber
に変換する作業を行う必要があります。
コードでは、3、4行目です。
なお、最初から数値で持っている場合は、この処理は不要です。
あとは、NSNumberFormatter
の numberStyle
でスタイルを変更して、数字を三桁ごとにカンマ区切りにしています。
ちなみに、Swift
だと、6行目を format.numberStyle = NSNumberFormatterStyle.DecimalStyle
と書きますが、Objective-C
だと、上記のように
format.numberStyle = NSNumberFormatterDecimalStyle;
と書くのでお間違えのないようにご注意ください。
処理としては以上です。
サンプルではコードの最後で、結果を NSLog
で表示していますが、アプリの仕様に合わせて UILabel
で表示するなどしてください。
以上、Objective-C で、数字を三桁ごとにカンマで区切る方法についてでした。
ご参考になれば幸いです。