【发布时间】:2020-02-07 02:40:54
【问题描述】:
我有以下代码,我觉得我可以改进它。具体来说,我想摆脱开关并强制施法。 Polygon 具有以下类型签名:
let polygon: MKShape & MKGeoJSONObject
switch polygon {
case is MKMultiPolygon:
let multiPoly = polygon as! MKMultiPolygon
renderer = MKMultiPolygonRenderer(multiPolygon: multiPoly)
case is MKPolygon:
let polygon = polygon as! MKPolygon
renderer = MKPolygonRenderer(polygon: polygon)
default:
fatalError("Should have had a renderer")
}
【问题讨论】: