0
[NSString stringWithFormat:@"%@ \n%@ \n%@",
self.message1,self.message2,self.message3];
有一种方法可以只传递message1.2.3.3只有如果不是==“”?NSString stringWithFormat:如何只传递不空的字符串?
[NSString stringWithFormat:@"%@ \n%@ \n%@",
self.message1,self.message2,self.message3];
有一种方法可以只传递message1.2.3.3只有如果不是==“”?NSString stringWithFormat:如何只传递不空的字符串?
只是提出另一种更紧凑的解决方案:
[[@[self.message1, self.message2, self.message3]
filteredArrayUsingPredicate:[NSPredicate predicateWithFormat:@"length > 0"]]
componentsJoinedByString:@" \n"];
所以不像曼迪的解决方案:
显然还有更多的步骤有那么它会花费多一点,但在大多数情况下,你真的不需要关心镍和角钱的东西。
如果您通过@""
,则无论如何不会显示任何内容,因此不会出现问题。所以我假设你也不希望换行符在字符串为空的情况下。
NSMutableString *s = [NSMutableString string];
if (self.message1 && self.message1.length) {
[s appendFormat:@"%@ \n", self.message1];
}
if (self.message2 && self.message2.length) {
[s appendFormat:@"%@ \n", self.message2];
}
if (self.message3 && self.message3.length) {
[s appendFormat:@"%@ \n", self.message3];
}