Cha*_*lha 7 objective-c format-specifiers
我一直在使用格式说明符,但它们是通用的%d,%@但是今天在我看到这些%1$@%2$d并且不理解它们代表的教程中.
这是一个计算器示例,因此他们在此声明中使用它们:stack = [NSString stringWithFormat:@"%1$@%2$d",stack,number];
Avi*_*Avi 11
数字代表位置参数.格式字符串后面的参数根据它们在参数列表中的位置插入字符串.第一个参数进入%1插槽,第二个参数进入%2插槽,依此类推.目的是处理术语/单词/等的顺序可能会从默认值更改的语言.您无法在运行时更改参数顺序,但可以确保参数最终位于字符串中的正确位置.
例
NSLog(@"%1$@, %2$@", @"Red", @"Blue");
NSLog(@"%2$@, %1$@", @"Red", @"Blue");
Run Code Online (Sandbox Code Playgroud)
产量
Red, Blue
Blue, Red
Run Code Online (Sandbox Code Playgroud)
请注意,格式字符串已更改,但参数的顺序相同.
| 归档时间: |
|
| 查看次数: |
1199 次 |
| 最近记录: |