This article aims to explain: the disadvantages of foreach in ilruntime, and you should try to avoid using foreach in ilruntime to traverse data.
Dictionary :
List:
The test code is as follows:
dics.Add("123", "opdfasp");
dics.Add("1234", "opdfasp");
dics.Add("125", "opdfasp");
dics.Add("126", "opdfasp");
dics.Add("127", "opdfasp");
dics.Add("128", "opdfasp");
dics.Add("129", "opdfasp");
dics.Add("121", "opdfasp");
dics.Add("12231", "opdfasp");
dics.Add("12332465", "opdfasp");
lists.Add("123");
lists.Add("1234");
lists.Add("125");
lists.Add("126");
lists.Add("127");
lists.Add("128");
lists.Add("129");
lists.Add("121");
lists.Add("12231");
lists.Add("12332465");
if (UnityEngine.Input.GetKeyDown(UnityEngine.KeyCode.D))
{
Dic = true;
}
if (UnityEngine.Input.GetKeyDown(UnityEngine.KeyCode.R))
{
Dic = false;
}
if (Dic)
{
foreach (var item in dics)
{
if (item.Key == "")
{
}
}
}
else
{
for (int i = 0; i < lists.Count; i++)
{
if (lists[i] == "")
{
}
}
}