Если вы хотите, чтобы культура была специфической, вы можете попробовать следующее:
(19950000.0).ToString("N",new CultureInfo("en-US"))
= 19,950,000.00
(19950000.0).ToString("N",new CultureInfo("is-IS"))
= 19.950.000,00
Примечание. Некоторые культуры используют ,
для обозначения десятичных чисел, а не .
, поэтому будьте осторожны.
Вы не можете. BOOL
является либо YES
, либо NO
. Там нет другого государства. Обходным путем было бы использовать NSNumber
([NSNumber numberWithBool:YES];
), а затем проверить, является ли сам NSNumber
nil
. Или есть второй BOOL
, чтобы указать, изменили ли вы значение первого.
Досадно, что Objective-C не имеет булева класса. Это, безусловно, такое чувство, что должно, и это сбивает с толку многих людей. В коллекциях и основных данных все bool хранятся как экземпляры NSNumber.
Это действительно раздражает необходимость постоянно конвертировать туда и обратно.
Можно использовать что-то вроде этого вместо этого...
@import Foundation;
@interface CSBool : NSObject
+ (CSBool *)construct:(BOOL)value;
@property BOOL value;
@end
#import "CSBool.h"
@implementation CSBool
+ (CSBool *)construct:(BOOL)value {
CSBool *this = [self new];
this.value = value;
return this;
}
@end