今天在我的应用程序中实现搜索功能时遇到了一个情景,让我感到困惑。请看以下代码片段:
public string GetFirstProductName(SortedList<string, object> itemsList) {
for (int i = 0; i < itemsList.Values.Count; i++) {
if (itemsList.Values[i] is Product)
// Doesn't Compile:
// return (Product)itemsList.Values[i].ProductName;
// Does compile. Precedence for the "." higher than the cast?
return ((Product)itemsList.Values[i]).ProductName;
}
}
}
那么,强制类型转换的优先级是什么?强制类型转换是一个运算符吗?as
关键字呢?它是一个运算符吗?它的优先级又是多少?