我需要创建一个包含类似
public List<int,bool> PostionAndChecked
{ get; set; }
然后是一个列表
public List<int> PageNumber
{ get; set; }
那么应该发生的是 PageNumber 列表中的每个页码应该链接到 PostionAndChecked 列表
我该怎么做呢?
我需要创建一个包含类似
public List<int,bool> PostionAndChecked
{ get; set; }
然后是一个列表
public List<int> PageNumber
{ get; set; }
那么应该发生的是 PageNumber 列表中的每个页码应该链接到 PostionAndChecked 列表
我该怎么做呢?
AList
是一种类型的列表,而不是两种。您可以使用Tuple<int, bool>
,也可以使用Dictionary<int, bool>
。
虽然,由于您只需要为每个数字保留一点,您可能会对使用 a 感到满意Set<int>
,只添加true
数字。
使用 a Dictionary<int, bool>
,这将存储Key
( int
) 和对应的Value
( bool
),而无需自己进行索引。所以对于上面你会有
public Dictionary<int, bool> lookup { get; set; }
...
lookup = new Dictionary<int, bool>();
像这样添加新条目
lookup.Add(0, true);
lookup.Add(1, false);
...
然后,您可以Boolean
根据相关索引引用该值,如下所示
bool b = lookup[someIndex];
有关此课程的更多信息,请参见此处。
我希望这有帮助。
以下仅作为说明适用,特别是如果 int 在您要检查的页面列表中是唯一的。希望您应该能够看到如何更改它以适合您的目的。
为什么你需要另一个存储页码的列表对我来说并不明显,也许你可以解释为什么你认为你需要它?
public class PageChecker
{
public IDictionary<int, bool> PositionAndChecked { get; set; }
public PageChecker()
{
SetUpPages();
}
private void SetUpPages()
{
PositionAndChecked = new Dictionary<int, bool>();
var pageCount = 10;
for (int i = 0; i < pageCount; i++)
{
PositionAndChecked.Add(i, false);
}
}
public void CheckPage(int pageNo)
{
PositionAndChecked[pageNo] = true;
}
}