0
我有一个对象具有一个人的地址属性。为了方便,我写了一个方法来生成一个NSString与该人的完整地址。我的实施是:有没有更好的实现方法?
/**
Returns the full address in US format of the Addressable object.
*/
- (NSString *)fullAddress {
NSMutableString *ret = [NSMutableString string];
if (self.company) {
[ret appendFormat:@"%@\n", self.company];
}
if (self.firstName) {
[ret appendFormat:@"%@", self.firstName];
}
if (self.firstName && self.lastName) {
[ret appendString:@" "];
}
if (self.lastName) {
[ret appendFormat:@"%@", self.firstName];
}
if (self.firstName || self.lastName) {
[ret appendString:@"\n"];
}
if (self.address) {
[ret appendFormat:@"%@\n", self.address];
}
if (self.addressLine2 && ![self.addressLine2 isEqualToString:@""]) {
[ret appendFormat:@"%@\n", self.addressLine2];
}
if (self.addressLine3 && ![self.addressLine3 isEqualToString:@""]) {
[ret appendFormat:@"%@\n", self.addressLine3];
}
if (self.city) {
[ret appendString:self.city];
}
if (self.city && self.state) {
[ret appendString:@", "];
}
if (self.state) {
[ret appendString:self.state];
}
if (self.zip) {
[ret appendFormat:@" %@", self.zip];
}
return ret;
}
这对我来说很笨拙。有一个更好的方法吗?
对codereview.stackexchange.com可能是一个很好的问题 – 2011-02-17 03:18:54