所以我正在制作一個任務系統,我想隨機選擇一個任務,但我不想它再次選擇相同的任務。這是字串的代碼片段。我找不到任何好的答案。這是一行更簡單的代碼。
string[] QuestChoose = new string[] {"Quest1", "Quest2", "Quest3"};
uj5u.com熱心網友回復:
想到了3種方法:
- 轉換為 List 并呼叫
Remove(). - 讀取任務后將 null 寫入陣列,并且在選擇任務時,如果選擇了 null,則始終搜索下一個建議。
- 保留一個單獨的資料結構,例如
HashSet<int>在使用任務時在陣列中添加索引的位置。然后在選擇時檢查您的 ID 上的包含。
uj5u.com熱心網友回復:
如果您想從集合中動態添加/洗掉元素,您真的應該使用串列。代替:
string[] QuestChoose = new string[] {"Quest1", "Quest2", "Quest3"};
嘗試使用:
List<string> QuestChoose = new List<string> { "Quest1", "Quest2","Quest3"};
您可以通過呼叫添加元素QuestChoose.Add("Quest4");
或通過呼叫洗掉元素:QuestChoose.Remove(ItemNumber);
where as "ItemNumber"is 要洗掉的字串的索引。例如; 呼叫QuestChoose.Remove(0);將洗掉串列中的第一項,在本例中為"Quest1"
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/316214.html
標籤:统一3d
