如何解决这段代码中括号的含义是什么
我正在自学Xamarin形式。在学习期间,我使用了此代码,但我不理解部分代码-(TripLogEntry)e
。
a)为什么括号中有TripLogEntry?
b)在文学中如何称呼/命名,以及
c)它有什么作用/该括号的目的是什么?
async void Trips_SelectionChanged(object s,SelectionChangedEventArgs e)
{
var trip = (TripLogEntry)e.CurrentSelection.FirstOrDefault();
if (trip != null)
{
await Navigation.PushAsync(new DetailPage(trip));
}
// Clear selection
trips.SelectedItem = null;
}
解决方法
这些是括号:()
,而不是括号:[]
或花括号:{}
,这称为铸造。这里有一些不错的文档:Casting and Type Conversions。
在这种情况下,这意味着e.CurrentSelection.FirstOrDefault()
将显式转换为TripLogEntry
的实例(而不只是object
)。
那些是括号“()”-方括号是“ []”
这是C#casting运算符-它将一种类型的变量转换为另一种类型
var trip = (TripLogEntry)e.CurrentSelection.FirstOrDefault();
在这种情况下,CurrentSelection
是object
,您想将其转换为类型TripLogEntry
您正在将 e.CurrentSelection.FirstOrDefault(); 投射到TripLogEntry
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。