如何比较Objective-C中的字符串大小?

时间:2012-02-02 06:07:58

标签: objective-c

我在Objective-C中有一个NSString,我想找到它的大小,然后将它与一些数字进行比较;但是,我不确定这样做的正确方法是什么?

到目前为止我所拥有的是一个名为display的属性UILabel *,而我正在考虑的是以下内容:

NSUInteger size = [self.display.text length];

但是,现在我想将此尺寸与0进行比较。但我不确定这样做的正确方法是什么?我想过要做以下事情,但由于某些原因,这似乎不对:

if(size == 1) { doSomething};

有任何帮助吗?感谢

2 个答案:

答案 0 :(得分:1)

是的,这是正确的方法。如果你想检查是否有一个长度大于0的字符串,即不只是@"",请将其与零比较,如下所示

NSUInteger size = [self.display.text length];
if(size>0) {
    //do something 
};

答案 1 :(得分:0)

您可以使用-[NSString length]。这只返回字符串中的字符数。 NSString抽象其底层缓冲区的编码,但length应该从中删除它!这与std::string.size()strlen不同,后者将返回字节数,与编码无关。

因此,您可以编写0 == str.length来确定字符串是否为空,或者1 == str.length来确定它是否是一个字符(编码安全)。