https://github.com/Hearst-DD/ObjectMapper要求我
required init?(_ map: Map){
}
我想实例化Foo()
但它是Foo?输入不是Foo。
我添加了以下初始化程序,但没有用。
override init() {
}
答案 0 :(得分:1)
拿起Foo ?,检查它是否有值,然后打开它。
let ff : Foo? = Foo()
if ff != nil {
let f : Foo = f!
// ...
}
或更简单:
let ff = Foo()
if let f = ff {
// ...
}
答案 1 :(得分:0)
**编辑** 对不起,这是一个错误的电话..
我遇到以下代码的问题。
var foo = Mapper<Foo>().map(jsonString)
if foo != nil {
return foo!
}
foo = Foo()
return foo
我认为问题是当我声明var foo
时它被声明为Foo?
类型且foo = Foo()
仍为Foo?
所以我将代码更改为
var foo = Mapper<Foo>().map(jsonString)
if foo != nil {
return foo!
}
return Foo()
似乎有效。