将NSMutableArray中的字符串与NSString进行比较

时间:2013-05-11 08:14:04

标签: objective-c nsstring nsmutablearray

我对Objective-c很新,这个问题可能看起来很简单,所以如果是的话,我很抱歉。我想我知道如何让用户在C中输入一个字符串,并使用strcmp将其与数组中的字符串进行比较。例如(不确定代码是否正确,因为我也不是很擅长)

    char *arr[2];
    arr[0] = "hello";
    arr[1] = "goodbye";

    char myString[10];
    printf("enter greeting\n");
    scanf("%s",myString);


    if(strcmp(myString,arr[0]) == 0 )
    {
        printf("hello to you to");
    }

    if(strcmp(myString,arr[1]) == 0 )
    {
        printf("goodbye then");
    }

但我正在尝试使用NSMutableArrays和NSStrings做同样的事情。到目前为止:

    NSMutableArray *myStringArray = [[NSMutableArray alloc] init];
    [myStringArray addObject:@"hello"];
    [myStringArray addObject:@"goodbye"];


    char greetingStr[40];
    printf("enter greeting\n");
    scanf("%s", greetingStr);

    NSString *greeting = [NSString stringWithUTF8String:greetingStr];
    //Some method to compare the strings

我想知道代码是什么,比较NSString与NSMutableArrays中的对象。很抱歉,如果它解释得很糟糕,但我对编程很新,请保持任何答案非常简单,因为我还是很新。提前谢谢。

2 个答案:

答案 0 :(得分:0)

“比较字符串的一些方法”是:

isEqualToString:,如果你只对字符串相等感兴趣;

compare:,如果您还想获得有关其词典排序的信息。

答案 1 :(得分:-1)

在Objective-c中,您使用NSArray方法引用NSMutableArrayobjectAtIndex:中的对象。

你会用

if ([[myStringArray objectAtIndex:0] isEqualToString:greeting]) {
    //your code here
}
if ([[myStringArray objectAtIndex:1] isEqualToString:greeting]) {
    //your code here
}

或类似的东西。