“foo =(foo + 1)%bar”到底是做什么的?

时间:2010-05-03 19:14:04

标签: objective-c

来自Finch音频库:

- (void) play
{
    [[sounds objectAtIndex:current] play];
    current = (current + 1) % [sounds count]; // this line here...
}

我试着理解它:有许多声音 n ,而current在每次迭代时都会增加1。只要current大于声音数 n ,模数就会返回零。这样,它从头开始。

这是对的吗?

1 个答案:

答案 0 :(得分:8)

是的,没错。