NSString에 대한 간단한 질문으로 substringToIndex 또는 상수 문자열 @ "0.00"에 의해 값이 할당 된 문자열에 따라 문자열에 값을 할당하는 코드 조각이 있습니다. 그것은 새로운 값을 유지 & 이전 값을 해제하기 때문에 할당에 대한NSString 할당 및 보유
// Save if value found, otherwise set to 0.00
if (parsedCharacters == nil || [parsedCharacters isEqualToString:@""])
self.currentDiscountedPrice = @"0.00";
else
{
// Truncate extra digits from string to 2 decimal places (find full stop, save 2 places after it)
NSRange fullStopRange = [parsedCharacters rangeOfString:@"."];
self.currentDiscountedPrice = [parsedCharacters substringToIndex:(fullStopRange.location + 3)];
}
를 사용하는 괜찮습니다?
이전 반복에서 var에 상수 문자열 또는 substringToIndex 반환 값이 할당되었는지 여부를 알 수있는 방법이 없지만 일정 문자열에서 release & 릴리스를 호출하는 것이 무해하다고 말했습니까?
기본적으로 위의 코드에서 오히려 명시 적으로 이전 값을 해제하고 substringToIndex 값을 유지해야하며 그렇지 않으면 self.currentDiscountedPrice =를 두 할당에 사용할 수 있습니까? –
OT : 대신에'parsedCharacters == nil || [parsedCharacters isEqualToString : @ ""]','parsedCharacters.length == 0'이라고 쓰고 싶습니다. Objective-C의 message-to-nil 의미론으로 인해, 이것은 'nil'을 탐지 할 것이고, 그것은 non-nil에 대해 조금 더 빨라질 것이며 물론 더 간단 할 것입니다. –