public static List<int> dynamicArray(int n, List<List<int>> qu)
{
List<int> ls1 = new List<int>();
int lastAnswer = 0;
foreach (List<int> ls in qu)
{
int index = (ls[1] ^ lastAnswer) % n;
if (ls[0] == 1)
{
List<int> s1111 = qu[index];
s1111.Add(ls[2]);
}
else
{
List<int> s1111 = qu[index];
int ind = ls[2] % s1111.Count;
lastAnswer = s1111[ind];
ls1.Add(lastAnswer);
}
}
return ls1;
}
Run Code Online (Sandbox Code Playgroud)
在调试时,我发现 qu 列表值正在改变,我很困惑为什么会发生这种情况,因为我没有在任何地方改变 qu 的值。
如果问题很愚蠢,请提前抱歉,但我仍然需要清除我的疑问。
当我使用时
var frontPage = await GetFrontPage();
protected override async Task<WordDocument> GetFrontPage()
{
return null;
}
Run Code Online (Sandbox Code Playgroud)
这段代码工作正常,我在 frontpage 变量中得到空值。但是当我将函数重写为
protected override Task<WordDocument> GetFrontPage() => null;
Run Code Online (Sandbox Code Playgroud)
我收到了一个NullReferenceException
.
谁能帮助我理解这两种说法之间的区别?