在Delphi中编码时,我可以使用这种语法更好地看到我的代码:
true
true
true
false
false
false
那将是相同的:
int[] array = new Random().ints(0, 65536).limit(8000).toArray();
这只是代码更好看,没有别的。
在swift 2中有没有相当于Delphi的“with ... do”语法?
答案 0 :(得分:1)
在Swift 2中有没有相当于Delphi的“with ... do”语法?
没有。
答案 1 :(得分:1)
我确实设法用一个简单的函数来模拟这个效果......
func with<T>(_ element: T, _ make: (T) -> ()) {
make(element)
}
如果你不喜欢&lt;制作&gt;你可以用&lt;替换它`do`&gt;同样的工作......
和来自:
minLat = Swift.max(location.coordinate.latitude, minLat)
minLong = Swift.max(location.coordinate.longitude, minLong)
maxLat = Swift.min(location.coordinate.latitude, maxLat)
maxLong = Swift.min(location.coordinate.longitude, maxLong)
我得到了:
with(location.coordinate) { c in
minLat = Swift.max(c.latitude, minLat)
minLong = Swift.max(c.longitude, minLong)
maxLat = Swift.min(c.latitude, maxLat)
maxLong = Swift.min(c.longitude, maxLong)
}
它出来很可爱......
答案 2 :(得分:0)
您可以使用元组类型来设置结构的多个字段。这比with ... do
构造有更好的封装,尽管看起来你想要做的事情会更好地用实例方法处理。