iOS:将id类型作为字符串打印

时间:2012-06-30 02:27:16

标签: ios ios5

在android我可以Log("aa",""+Object),然后对象可以作为字符串打印,它可以帮助我理解对象,如果对象是int类型,我不是转换器,所以我想做同样的事情就像在iOS中一样。例如:我想在iOS上将id类型打印为字符串,如下所示:

NSLog(@"#### %s",[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, 5)]);

我想将[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, 5)]的返回值打印为字符串,以便我能理解indexSetWithIndexesInRange方法。

2 个答案:

答案 0 :(得分:2)

尝试使用%@,这是打印NSObject的{​​{1}}的格式(可可类似于Java的description)。

答案 1 :(得分:0)

如果目标是获取对象' id,请考虑以下内容 -

    print("#A>\(String(format: "%@", arguments: [self]))");
    print("#B>\(String(format: "%d", arguments: [self]))");
    print("#C>\(String(format: "%d", arguments: [self.hash]))");
    print("#D>\(String(format: "%d", arguments: [self.hashValue]))");

我得到以下控制台输出(对于我在TimerCell.swift中的示例代码) -

    #A><MultiTimer.TimerCell: 0x7fa133806200; baseClass = UITableViewCell; frame = (0 0; 320 75); layer = <CALayer: 0x7fa131d07080>>
    #B>864051712
    #C>864051712
    #D>864051712