与另一个数组具有相同类型的Swift init空数组
我是Swift的初学者,所以这个问题可能很傻 我想要一个函数,其中创建的空数组的类型与传入参数的类型相同。与另一个数组具有相同类型的Swift init空数组,swift,Swift,我是Swift的初学者,所以这个问题可能很傻 我想要一个函数,其中创建的空数组的类型与传入参数的类型相同。 我试过下面的方法,但都不管用 private func doSomething<T>(source: [T]) { var result = [source] var result = [source]() var result = [type(of:source)]() var result: type(of:source) = Array()
我试过下面的方法,但都不管用
private func doSomething<T>(source: [T]) {
var result = [source]
var result = [source]()
var result = [type(of:source)]()
var result: type(of:source) = Array()
}
private func doSomething(来源:[T]){
var结果=[来源]
var结果=[source]()
var结果=[类型(来源)]()
变量结果:类型(of:source)=数组()
}
我看到这样做的选项:
private func shuffle<T>(source: [T]) {
var result = source
result = []
}
private func shuffle(源:[T]){
var结果=源
结果=[]
}
但是有没有更好的方法来实现我的目标呢?您可以这样做:
private func shuffle<T>(source: [T]) {
var result: [T] = []
//do something with your result (being an empty array at this point)
}
private func shuffle(源:[T]){
变量结果:[T]=[]
//对结果进行处理(此时为空数组)
}
简单地说:
var result = [T]()
或
var result: [T] = []