我創建了一本字典(Dictionary<string, bool> values
)。更改字典C的值#
我創建函數:
private Dictionary<string, bool> ChangeValues(int line, Dictionary<string, bool> values)
{
for (int i = 0; i < line; i++)
{
}
return values;
}
我想根據線的數量來改變布爾值。
下表是一個辭典的結果(只顯示布爾):
line 0 = values["A"][false]
values["B"][false]
values["C"][false]
line 1 = values["A"][false]
values["B"][false]
values["C"][true]
line 2 = values["A"][false]
values["B"][true]
values["C"][false]
line n...
如何變更,根據線的數量bool值?
感謝。
[更新]
一些幫助後,函數完成:
private Dictionary<string, bool> ChangeValues(int line, Dictionary<string, bool> values)
{
string[] keys = values.Keys.ToArray();
keys = (from k in keys orderby k descending select k).ToArray();
for (int i = 0; i < line; i++)
{
for (int j = 0, bit = 1; j < values.Count; j++, bit <<= 1)
{
values[keys[j]] = (i & bit) != 0;
}
}
return values;
}
由於PeterDuniho
您能否提供樣本輸入和期望的輸出?目前的產量是多少? –
@FirstStep如果行是0,所有的布爾值將是false,如果行是1,則最後一行將是true,如果行是2,則最後一行將是true ...也許等於二進制邏輯?我不知道... – jsfelipearaujo
你是什麼意思「_line是0_」?你的意思是'=「0」'或什麼? –