Swiftには何らかのオブジェクトを返す関数があります。そのオブジェクトはオプションです。それが存在しなければ、私はゼロを返すべきだと思うが、スウィフトはそれを禁じる。コード機能していない、次のとおりです。swift関数でnilを返す
func listForName (name: String) -> List {
if let list = listsDict[name] {
return list
} else {
return nil
}
}
それは言う:error: nil is incompatible with return type 'List'
しかし、私は空のListオブジェクトのようなものを返すようにしたくない、私はオプションが空の場合、何も返さないようにしたいです。どうやってするか? List?
func listForName (name: String) -> List? {
if let list = listsDict[name] {
return list
} else {
return nil
}
}
それとも、それがオプションであるか、またはリスト自体を持っていますので、どちらかlistsDict[name]
を返す:あなたはオプションを返す必要がエラーを修正する
戻り値の型 'List'はオプションの変更ではないので、通常は' List? 'に戻ります。 – CarpenterBlood
@CarpenterBloodありがとう –