你好我整晚都在破坏我的头脑,我知道我错过了一些简单的事情。请帮助!
我有一个名为' TakenSlots'的可观察集合。我想看看它不包含什么整数。
当我使用普通的contains()方法但它没有使用!contains()方法返回任何内容时它工作正常。
int y =1;
foreach(item in TakenSlots)
{
if (!(TakenSlots.Contains(y)))
{
await DisplayAlert("Alert",y.ToString(),"Ok");
}
y++;
}
答案 0 :(得分:0)
你使用DisplayAlert
会让你失望 - 要么因为你不在主线程上而无法工作,要么存在其他问题,但是如果你使用简单的WriteLine
声明它按预期工作
ObservableCollection<int> data = new ObservableCollection<int>();
data.Add(1);
data.Add(2);
data.Add(4);
Console.WriteLine(!data.Contains(1));
Console.WriteLine(!data.Contains(2));
Console.WriteLine(!data.Contains(4));
Console.WriteLine(!data.Contains(5));
返回
false
false
false
true
答案 1 :(得分:0)
解决! 由于某种原因,它不适用于foreach循环。
for (int i = 1; i <= 8; i++)
{
if (!(TakenSlots.Contains(i)))
{
await DisplayAlert("Alert", "does not contain " + i, "Ok");
}
else
{
await DisplayAlert("Alert", "does contain " + i, "Ok");
}
}