全局变量-Swift 怎么定义一个全局的数组呢?

问题描述

Swift 怎么定义一个全局的数组呢?
定义全局数组 var dataArray:NSArray = []
在调用赋值时dataArray = (dic![""data""])! as! NSArray
为什么不对呢??

解决方案

你的定义语法是正确的,赋值语句有问题,你是要插入数据呢,还是引用某个数据呢。这样写很奇怪啊,报错了吗?

解决方案二:
定义全局数组 var dataArray:NSArray = []这句话定义了一个数组
这需要你dic字典中的 dic[”data“] 的value 是一个数组
例如我下面的代码dic[""data1""] = [1,2]是一个数组,和你定义的dataArray:NSArray 类型匹配
let dic = [""data1"":[12]data2"":[13]]
dataArray = dic[""data1""]! as NSArray
print(dataArray)

解决方案三:
你后的处理的时候,可以直接append来插入数据到数组。

解决方案四:
贴报错代码图片 不要直接零碎的代码

时间: 2024-09-15 15:48:20

全局变量-Swift 怎么定义一个全局的数组呢?的相关文章

编程c语言-vs2013中如何定义一个结构体该结构体定义一个结构体数组 结构体数组中包含一个链表

问题描述 vs2013中如何定义一个结构体该结构体定义一个结构体数组 结构体数组中包含一个链表 这样定义对么 编译时报错 缺少:在*前面 这是哪错了啊 请高手指点指点 解决方案 你把两个结构体的定义调换一下次序就没问题啦,要先声明或定义结构体:Station,才能使用 解决方案二: 因为struct Station是在struct Train结构体之后才定义的,所以你要在这之前先声明一下struct Train 解决方案三: 做一个前向声明,或者调换两个结构位置都可以. 解决方案四: 结构体数组

二维数组存储数据-如何定义一个二维数组和赋值,数组里面需要放【String】【List】

问题描述 如何定义一个二维数组和赋值,数组里面需要放[String][List] 我现在用多个线程处理一个List 每个线程取List里面的50条数据进行处理返回一个List.然后把线程名和返回的List放入二维数组里面. 解决方案 不用数组用map怎么样map.key=线程ID,val=处理数据集合,如果非要数组的话,你用object类型数组

在java中定义了一个二维数组,这样做好像不对,输出时报错, 代码如下

问题描述 在java中定义了一个二维数组,这样做好像不对,输出时报错, 代码如下 我是想要定义一个二维数组,然后动态地给它赋值,应该怎么做不知道问题出在做么地方,请大神指导一下 ,代码如下: int[][] a = null; a[1] = new int[]{1,2,3}; System.out.println(a[1][1]); 解决方案 int[][] a = null; a = new int[5][];//第一维需要初始化 a[1] = new int[]{1,2,3};//这是第二维

c-定义一个数组存放数据和定义一个指针存放东西有什么区别

问题描述 定义一个数组存放数据和定义一个指针存放东西有什么区别 定义一个数组存放数据和定义一个指针存放东西有什么区别,u8 a[]="adflkadjflkdjf"和u8 *b="adakkjfakdhflkd"这两种格式是一样的吧,但是当需要定义一个存储空间是可以用数组,U8 c[20],但是没办法用指针实现吧 解决方案 后者"adakkjfakdhflkd"在常量区,不能修改. 解决方案二: 如何动态定义一个 对象指针数组 解决方案三: 你可

如何表示一个变化的数组名

问题描述 如何表示一个变化的数组名 例如我有四个数组buf1[5],buf2[5],buf3[5],buf4[5],想根据i来判断是哪个数组bufi[5],这样写不可以吗 解决方案 用数组的数组就是了 int[][] = { buf1, buf2, buf3, buf4 }; 解决方案二: int buf[][] = { buf1, buf2, buf3, buf4 }; 解决方案三: 简单的定义一个二维数组就可以了 解决方案四: char buf1[5] = {1},buf2[5] = {2}

如何定义一个针对线程的全局变量?(C++)

问题描述 如何定义一个针对线程的全局变量?(C++) 我想定义一个全局变量,但是要求当不同线程访问时不会看到其他线程对它的修改,也就是说,这个变量只是在一个线程中看起来像是全局变量,实际上每一个线程都拥有它的副本并且只能看到和修改这个副本:但这个变量也不是线程的局部变量,因为这个变量不知道调用它的线程在何处启动,若用局部变量的话实现可能比较繁琐,所以我需要一个只在一个线程中看起来像是全局变量的变量,要实现这个目的该如何做呢?望高手指教! 解决方案 语言层面做不到.每个线程的堆栈是独立的,但是共用

定义一个数组,为什么这个数组里面既可以是单个的字符用逗号隔开,也可以是字符串呢

问题描述 定义一个数组,为什么这个数组里面既可以是单个的字符用逗号隔开,也可以是字符串呢 定义一个数组,为什么这个数组里面既可以是单个的字符用逗号隔开,也可以是字符串呢,字符串和字符的关系 解决方案 字符数组可以直接用双引号,这是C语言为了方便字符串定义而开的特例. 解决方案二: 字符串是又一个个字符组合而成定义数组时数组里面既可以是单个的字符用逗号隔开,那是一个个对数组的元素进行赋值也可以是字符串那是因为在内存中,一个数组里面的元素其实它们地址是相连的,只要得到首地址再加上每个地址块大小,变可

c-如何定义一个自增之后在二维数组中移动到下一行的指针?

问题描述 如何定义一个自增之后在二维数组中移动到下一行的指针? 如何定义一个自增之后在二维数组中移动到下一行的指针?如何定义一个自增之后在二维数组中移动到下一行的指针? 解决方案 自增是不能移动到下一行的,自增实现的是++, 解决方案二: 用二重数组,比如 int ** arr; arr += 第一维长度; 解决方案三: int a[m][n]={""}; *a+1;表示下一行; *(a+1):表示下一个元素位置. 若果now<n,移动到x行的当前位置:a[m*x+now]. 解

一个现成的二维数组,如何定义一个 指针的指针 来指向这个二维数组?

问题描述 一个现成的二维数组,如何定义一个 指针的指针 来指向这个二维数组? 例:这样一个数组,想定义一个指针的指针,指向它. int arr1[4][4] ={ {1,2,3,4}, {5,6,7,8}, {9,10,11,12}, {13,14,15,16} }; ps. 这个指针的指针 是 用来传递个函数的. 因为某种要求,需要向函数传递一个二维数组,函数的形参表中定义了 int **. 因此 这个指针的指针一定要能够传递函数,并且函数能够通过它操作二维数组元素. 解决方案 指向二维数组的