JBe*_*sky 2 int logic objective-c stringwithformat ios
我目前有一个自定义格式的int值并显示在标签中.int值总是一个5位数字,我在十分之一到百分之一的位置显示一个+符号.如果number = 12345,则displayNumber = 123 + 45.
ViewController.m
int high = number / 100;
int low = number - (high * 100);
NSString *displayNumber = [NSString stringWithFormat:@"%d+%d", high, low];
Run Code Online (Sandbox Code Playgroud)
我的问题是当数字在十分位数时为零.如果number = 12304,displayNumber将显示为123 + 4,我希望它显示为123 + 04.我尝试使用低于10的if语句,但这与我的其余代码并不完全兼容.是否有任何简单的方法可以使低显示两位数,即使它是一位数?提前谢谢您的时间.
试试这个:
NSString *displayNumber = [NSString stringWithFormat:@"%d+%02d", high, low];
// ^^
// ||
// |+-- Two positions
// +--- Pad with zeros
Run Code Online (Sandbox Code Playgroud)
该声明
int low = number - (high * 100);
Run Code Online (Sandbox Code Playgroud)
可以优化为
int low = number % 100;
Run Code Online (Sandbox Code Playgroud)
您也可以完全跳过临时变量:
NSString *displayNumber = [NSString stringWithFormat:@"%d+%02d", number/100, number%100];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
260 次 |
最近记录: |