NSString * strNil= [NSString stringWithFormat:@"%@",nil];
Das Ergebnis ist strNil ist @ "null"Wie macht man Nil produziert einfache leere Zeichenfolge in NSStringWithFormat?
Nun, ich will es sein @ ""
Und ich möchte eine elegante Lösung. Ich weiß, ich kann einfach die leere Methode der Methode "emptyStringIfNil" erstellen. Aber das würde nicht funktionieren, da diese Funktion anstelle von @ "" null zurückgibt.
Was tun Sie dafür?
Grundsätzlich möchte ich Aussagen wie
NSString * result =[NSString stringWithFormat:@"http://%@/business/api/addOrEditBusiness.php?flag=%@&title=%@&building=%@&latitude=%@&longitude=%@&website=%@&street=%@&city=%@&country=%@%@&originalid=%@&inbuildingaddress=%@&email=%@&zip=%@%@&userid=%@%@",urlServer,strFlag,biz.Title.RobustURLEncodedString,biz.buildingName.RobustURLEncodedString,@(coord.latitude),@(coord.longitude),biz.Website.RobustURLEncodedString,biz.Street.RobustURLEncodedString, biz.City.Name.RobustURLEncodedString, biz.City.Country.Name.RobustURLEncodedString,strPhonesParameter,biz.ID.RobustURLEncodedString,biz.InBui
leer jedes Mal zeigen die Zeichenfolge null
Zum Beispiel, wenn street null ist, ich will & street = & city = Tokyo statt & street = (null) & city = Tokyo
Warum würde Ihre Methode 'emptyStringIfNil'' 'nil' zurückgeben? Wenn Sie es schreiben wie: 'return string? string: @ ""; 'dann bekommst du was du willst. – rmaddy
Wenn er '[anObject emptyStringIfNil]' 'aufruft und 'anObject' gleich null ist, gibt die Methode nil zurück. – Sebastian
@Sebastian Guter Punkt. Das ist kein Problem, wenn 'emptyStringIfNil' als eine Funktion anstelle einer Instanzmethode geschrieben wird.Und das zeigt deine Antwort. :) – rmaddy