※ 引述《netsm (小黑)》之铭言:
上面恕删
: 请教: double uk=(ux==null)? (exact(t,x,y)): ux.f1(0, x, y, 0, 0, 0);
: 是什么样的逻辑?
: 我读出来的档案 write("..\\(2D)uexact_" + filename + ".plt", null);
: 只有时间t有值,而x,y皆为零,是否与 null 有关?
个人的理解是,这是个简略化的if else区块
如果把那一句写成if else区块会变这样:
double uk;
if (ux == null)
{
uk = exact(t, x, y);
}
else
{
uk = ux.f1(0, x, y, 0, 0, 0);
}
基本上是有等式的运算才可以简略成这样
用在return之类的地方也可以