OStack程序员社区-中国程序员成长平台

标题: iOS - 在一个变量中存储多个值 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 23:53
标题: iOS - 在一个变量中存储多个值

我正在创建 5 个整数变量以在 Objective C 中存储 5 个不同的值。例如:intA、intB 等

以下只是示例代码:

例如:

for (Desframe *obj in [myval allValues])
{
    if (obj.A>10.0) {
        myLabel.text = @"A";
        intA = intA++;
    }
    else if (obj.B>10.0) {
        myLabel1.text = @"B";
        intB = intB++;
    }
    else if (obj.C>10.0) {
        myLabe2.text = @"C";
        intC = intC++;
    }
    else if (obj.D>10.0) {
        myLabe3.text = @"D";
        intD = intD++;
    }
    else if (obj.E>10.0) {
        myLabe4.text = @"E";
        intE = intE++;
    }    
}

将来,我可能需要再添加 2 个变量。 我想知道如何避免创建 5 个不同的整数变量,但将 5 个不同的值存储在一个变量中。我应该使用数组吗? (或)如何专业地处理这段代码?

但我希望在同一个类 (.m) 文件中全局访问此变量。

请分享您的建议和指导。



Best Answer-推荐答案


是的,您可以为此使用 NSMutableArray。然而,Objective-C NSArray 有点奇怪,因为它们只能包含对象。您必须将条目“装箱”为 NSNumber 对象:

NSMutableArray *numbers = @[@(1), @(2), @(3), @(4), @(5)];

然后你可以从数组中获取一个项目:

NSNumber *aNumber = numbers[0];

但是 NSNumber 对象是不可变的。

您可能想要使用 C 风格的数组:

UInt64 numbers[] = [1, 2, 3, 4, 5];

那你可以说

numbers[0]++;

但是对于静态分配的 C 样式数组,您不能在运行时向数组中添加元素。

关于iOS - 在一个变量中存储多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42074138/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4