我试图在Java中的ArrayList中计算每个true之前的falses数。
例如,如果我有[true,false,false,true,true] 我会得到[0,2,0]
如果列表末尾的false后面没有true,则不计算
所以如果我有[假,真,假,假] 我会得到[1]
我试过了:
private bool IsItemClickDisabled;
private void TextTapped(object sender, TappedRoutedEventArgs e)
{
IsItemClickDisabled = true;
//TODO: Your tap event handler
e.Handled = true;
}
private async void ItemClickHandler(object sender, ItemClickEventArgs e)
{
IsItemClickDisabled = false; //Reset each time
await System.Threading.Tasks.Task.Delay(TimeSpan.FromMilliseconds(1));
if (!IsItemClickDisabled)
{
//TODO: ItemClick handler
}
}
但我会[[1,1,1]得到[假,真,真,真]这应该返回[1,0,0]
我认为我应该在有两个连续的trues时重置incorrect_attempts计数器,但不知道该怎么做。
感谢任何帮助。谢谢!
答案 0 :(得分:0)
当你得到真的时,你需要将incorrect_attempts
重置为0。所以改变这个:
else
falses_before_a_true.add(incorrect_attempts);
到
else {
falses_before_a_true.add(incorrect_attempts);
incorrect_attempts = 0;
}