objective-c - 将字符串更改为数组并与内容交互

标签 objective-c ios arrays foreach character

我正在尝试编写一些代码来获取一个字符串(该字符串根据星期几自动更改),将该字符串解析为字符,并在某些点按顺序检索字符。下面是它的使用方法:

if (DateIsBetween(aPeriodMWF, legitDate, bPeriodMWF)) period=aPeriod;
    if (DateIsBetween(bPeriodMWF, legitDate, cPeriodMWF)) period=bPeriod;
    if (DateIsBetween(cPeriodMWF, legitDate, dPeriodMWF)) period=cPeriod;
    if (DateIsBetween(dPeriodMWF, legitDate, ePeriodMWF)) period=dPeriod;
    if (DateIsBetween(ePeriodMWF, legitDate, fPeriodMWF)) period=ePeriod;
    if (DateIsBetween(fPeriodMWF, legitDate, gPeriodMWF)) period=fPeriod;
    if (DateIsBetween(gPeriodMWF, legitDate, aPeriodMWF)) period=gPeriod;

    if (period==1) {
        if(parsedCharacter='A') nextPeriodLabel.text="A Period Class";
        //repeat for parsedCharacter = b,c,d,e,f,g
    }

    if (period==2) {
        //Do the same thing, but get the second character in the string   
    }

在此代码中,“parsedCharacter”需要反射(reflect)序列中的第一个字符。然而,在下一个语句中,它将必须反射(reflect)字符串中的下一个字符。 这是获取字符串的代码:

if (currentWeekType == 1) {
    if ([weekDay isEqualToString:@"Wednesday"]) sequenceString = @"ABCDEF";
    if ([weekDay isEqualToString:@"Friday"]) sequenceString = @"DGCFEAB";
}

最佳答案

要检索单个字符,您可以使用[myString characterAtIndex:i],其中i是字符串中的索引。根据您的需要,您可以对索引号进行硬编码或使用计数器变量来递增它(从而获取下一个字符)。当然,您也可以将 NSString 复制到 NSMutableString 中,并在提取字符后删除第一个字符,但这可能比使用索引变量慢很多。但要注意不要超出字符串的末尾(索引大于字符串大小)。

关于objective-c - 将字符串更改为数组并与内容交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8312327/

相关文章:

ios - 如何让图标出现在 IOS Safari 的建议网站列表中

javascript - 如何格式化嵌套 json 数组取决于 api 请求 json 的条件

ios - 使用 [self.view.layer removeAllAnimations] 后,下一个动画不工作

ios - 将数百个 PFObject 保存到 Parse 云

ios - 倒计时模式下的 UIDatePicker : Can I have a countdown thats longer than 23:59?

c - C 中 uint32 的一维数组

arrays - 展平 Lua 中的嵌套列表

c++ - 在 Xcode 中编译 C++ 时出现很多错误

objective-c - 如何在 objective-c 中打印字符集?

ios - 使用 Xcode 8.3.2 编译 cocoa lumberjack 导致 DDOSLogger.m 出错