我是新来的当我正在学习基础知识时,我在NSLog得到这个错误
这是我的代码:
import UIKit class ViewController: UIViewController { var myString: NSString? override func viewDidLoad() { super.viewDidLoad() myString = "himanth" print(myString) NSLog("%@",myString) // Do any additional ssetup after loading the view,typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } }
如果我这样声明myString
var myString: NSString!
可以使用NSLog,我也可以看到控制台.
但是声明这样的字符串会导致问题
var myString: NSString?
这是什么问题?
解决方法
如果你声明var myString:NSString?作为可选的,那么在将其传递给NSLog之前,您需要确保它具有一个值.
所以你可以这样做NSLog(“%@”,myString!).如果myString是零,你放!程序会崩溃,你会得到
fatal error: unexpectedly found nil while unwrapping an Optional value.
但是如果它有一个值,程序将继续正常打印出来
2016-10-03 10:26:25.077 Swift3.0[65214:1579363] Test
我写了myString =“测试”.