2017-08-30 81 views
0

让利比较阵列得到预期的结果说我有一些类存储对象名称,这在项目中定义的每个对象如何通过使用特定的值

let arrays = [“obj1”, “obj2”, “obj3”, “obj4”] 

所以我有另一类用于接收从视图控制器 ,其返回一个“内部”引用OBJ1,OBJ2,OBJ3,OBJ4让假设它作为1 2 3 4到输入称为视图控制器分别

struct getIndex { 
    let objIndex: Int 
} 

阵列我需要打印数组

中的一个项目

即名称:OBJ1等等,等等

但是由于视图控制器返回1 2 3 4其是指每项阵列 中,所以我希望如果条件只打印想要的项目IE。 obj1和3不是obj2和obj4

ie。如果视图控制器返回2或4它不会做任何事情

但如果它返回1或3就会调用OBJ1和3并打印预期

if someclass.getindex == something I don't know for obj1 and 3 { 
    print(String(format: "%@", objectName) 
} 
+3

“如果条件行返回错误”什么错误?你正在比较一个Int和一个String数组? – Larme

+0

什么是一些类?它是一个对象吗?请添加更多代码。 –

+0

@Larme实际上,我希望当viewController中的value1从另一个“Int”函数获取一个值来仅打印数组no的条件。 1和3不是2即。打印0001和0003,即使另一个函数为2号字符串返回“Int” – JameS

回答

0

我认为这是你正在寻找的东西:

if ["0001", "0003"].map{Int($0)!}.contains(someclass.value1) { 
    print(someclass.value1) 
    print(someclass.value2) 
} 

我敢肯定有来,虽然解决您的潜在的问题有更好的方式...

相关问题