我有一张地图列表
val names = List(Map("rawname"->"a", "stdname" -> "A"), Map("rawname"->"b", "stdname" -> "B"), Map("rawname"->"c", "stdname" -> "C"))
我要解压缩到
val rawToStd = Map("a" -> "A", "b" -> "B", "c" -> "C")
我试过了
val rawToStd = names.map(e => e.getOrElse("rawname", "") -> e.getOrElse("stdname", "")).toMap
它做了我想要的,但我确信必须有更好的(更惯用或更简洁)的方式。例如,我不喜欢重复getOrElse
。
答案 0 :(得分:1)
如果您确定这些eventfilter
中的if (ui.graphicsView->viewport())
if (ev->type() == QEvent::MouseMove)
{
QMouseEvent *mEvent = (QMouseEvent*)ev;
Zoom_point2_ = mEvent->pos();
}
和rawname
键存在映射,则可以考虑使用Map.apply
代替stdname
和Map
:
Map.get
答案 1 :(得分:1)
您可以使用protected override void OnLaunched(LaunchActivatedEventArgs e)
{
if (e.Kind == ActivationKind.Launch && e.Arguments == "/Argument")
{
// Navigate to specific method
}
}
来实现此目标
collect