为什么此消息不返回字符串:
NSDate *today = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
NSString *formattedDate = (@"Date for today %@:", [dateFormatter stringFromDate:today]);
答案 0 :(得分:2)
该表达式确实返回NSString,但没有格式化。要正确格式化NSString,请使用+stringWithFormat:
method:
NSString* formattedDate = [NSString stringWithFormat:@"Date for today %@:",
[dateFormatter stringFromDate:today]];
表达式a, b
是“comma expression”。它会按顺序评估a
和b
,并返回b
的值。在您的情况下,它将仅返回日期字符串。
大多数情况下,您不想使用逗号表达式。
此外,在使用之前需要配置dateFormatter
。例如,
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeStyle:NSDateFormatterNoStyle];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
...
... [dateFormatter stringFromDate:today] ...
...
[dateFormatter release];