【问题标题】:Objective-C - NSLog - "%@" Referencing CharacterObjective-C - NSLog - "%@" 引用字符
【发布时间】:2012-05-28 21:31:20
【问题描述】:

我正在阅读 BNR iOS 编程文本,我遇到了这段代码:

 NSLog(@"%@", [items objectAtIndex:i]);

我不确定“%@”的用途。我见过其他引用整数或字符的格式,但我从未见过这种情况。

我什至检查了这个参考here,它什么也没有。

谢谢!

【问题讨论】:

标签: objective-c nslog


【解决方案1】:

%@ 用于打印objective-c 对象。

更准确地说。每个对象都可以覆盖

-(NSString *)description

当您使用 %@ 时会调用此方法。这取决于对象它将在NSString 中返回对象的什么信息。

【讨论】:

    【解决方案2】:

    根据苹果:

    Objective-C 对象,如果可用,则打印为descriptionWithLocale: 返回的字符串,否则打印为description。也适用于CFTypeRef 对象,返回CFCopyDescription 函数的结果。

    参考:

    【讨论】:

      【解决方案3】:

      我正在处理相同的文本 - 来自 Java 背景,“%@”格式化程序似乎等同于 Java 将具有的“toString”方法。 它用于显示有关对象的自定义信息。

      对此 StackOverflow question about the "toString()" 等效项的响应中有一个很好的示例。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-01-07
        • 1970-01-01
        • 1970-01-01
        • 2011-02-15
        • 2023-03-22
        • 2013-01-20
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多