Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/98.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何正确实例化_Ios_Arrays_Swift_Nsdictionary - Fatal编程技术网

Ios 如何正确实例化

Ios 如何正确实例化,ios,arrays,swift,nsdictionary,Ios,Arrays,Swift,Nsdictionary,我已经为此工作了三个晚上,几乎失去了我的周末,所以我将感谢你的帮助 我被告知我没有实例化-我不是100%确定它是如何工作的,我在网上读过,但希望看到一个与我的特定代码有关的示例 在应用程序代理中,我有以下内容: var myDataSource: Array<Dictionary<String,Any>>! 我有关于展开变量的知识,但是我认为这与实例化有关,如果我错了,请告诉我 myDataSource是可选的。您从不实例化它,所以当您尝试向它附加某些内容时,它当然是n

我已经为此工作了三个晚上,几乎失去了我的周末,所以我将感谢你的帮助

我被告知我没有实例化-我不是100%确定它是如何工作的,我在网上读过,但希望看到一个与我的特定代码有关的示例

在应用程序代理中,我有以下内容:

var myDataSource: Array<Dictionary<String,Any>>!

我有关于展开变量的知识,但是我认为这与实例化有关,如果我错了,请告诉我

myDataSource是可选的。您从不实例化它,所以当您尝试向它附加某些内容时,它当然是nil。在向数组中添加内容之前,应该立即实例化它,或者检查是否为nil

FYI-使用更简单的语法:
var myDataSource:[[String:Any]]我不同意你的观点,Maddy,我不知道你提到的问题如何回答我关于词典用法的问题。。。我在网上看到过你提到的东西,但我无法将它的含义与我遇到的问题联系起来,所以我决定用我的特定变量和我的特定代码示例(使用app delegate)提问。我认为这个链接更接近我需要的,但当我尝试为它编码时它不起作用。。。谢谢你的回答Frederick,这比rmaddy提供的要有用得多。我以为我已经用if语句检查过零了?另外,不实例化它是什么意思?用户名不是nil,数据源是nil。你放了一把!在声明的末尾,如下所示:
var myDataSource:Array密码!意思是“嘿,这里会有一个值,但不是现在”。如果你换了新的!使用(),数组将立即被实例化为空,这将解决您的问题。非常感谢!
class UserInfoViewController: UIViewController {
    @IBOutlet weak var firstName: UITextField!
    var userName: String?

    @IBAction func submitName(_ sender: UITextField) {
        userName = firstName.text
        if userName != nil {
            let saveName: [String: Int] = ["userName!": 0]
            myDataSource.append(saveName)
            print(firstName)
        }
    }