【发布时间】:2015-05-05 01:59:03
【问题描述】:
我编写了一个 swift 函数,它返回一个 int 数组并在 Objective-c 中调用它。但是我不能将返回数组的元素分配给 int 变量。 (在swift中TotalRoute是一个int数组)
这是GetRoute类中的函数
func returnTotalRouteX()->[Int]{
println("call returnTotalRouteX")
var routeX = [Int]()
for item in totalRoute{
routeX.append(nodeData[item]!.xPosition)
}
println(totalRoute)
println(routeX)
return routeX
}
然后我在objective-c中调用它
GetRoute *h = [[GetRoute alloc] init];
if (h.returnTotalRouteX.count == 0) {
NSLog(@"it is empty");
}
else{
NSLog(@"%@",h.returnTotalRouteX);
NSLog(@"%@",h.returnTotalRouteX[0]);
NSLog(@"it is not empty");
}
我只能写 NSLog(@"%@",h.returnTotalRouteX[0]);。如果我写 NSLog(@"%d",h.returnTotalRouteX[0]);或者我将 h.returnTotalRouteX[0] 分配给一个 int 变量,答案不是我想要的。如何获取 int 值?
【问题讨论】:
-
你有没有试过拆箱,即
[h.returnTotalRouteX[0] intValue]? -
是的!它符合您的建议!谢谢!
标签: objective-c swift nsarray