我明白那个:
value = (a > b) ? a : b;
是相同的:
if (a > b)
value = a;
else
value = b;
但是我很难理解这意味着什么:
编辑(我以前使用的示例不好,这是另一个示例中的真实代码):
Tracker t = (trackerId == TrackerName.APP_TRACKER) ? analytics.newTracker(PROPERTY_ID)
: (trackerId == TrackerName.GLOBAL_TRACKER) ? analytics.newTracker(R.xml.global_tracker)
: analytics.newTracker(R.xml.ecommerce_tracker);
如何重写了最后方程式来讲if
,else if
和else
?
Tracker t = (trackerId == TrackerName.APP_TRACKER) ? analytics.newTracker(PROPERTY_ID)
: (trackerId == TrackerName.GLOBAL_TRACKER) ? analytics.newTracker(R.xml.global_tracker)
: analytics.newTracker(R.xml.ecommerce_tracker);
您似乎曾经生产过value = (a > b) ? a : b ? c : d;
,可能应该更像是value = (a == b) ? c : (a == d) ? e : f
,它会读到类似...
Tracker t = null;
if (trackerId == TrackerName.APP_TRACKER) {
t = analytics.newTracker(PROPERTY_ID);
} else if ((trackerId == TrackerName.GLOBAL_TRACKER)) {
t = analytics.newTracker(R.xml.global_tracker);
} else {
t = analytics.newTracker(R.xml.ecommerce_tracker);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句