在Obj-C中以Java等价物传递对象类型的参数

时间:2013-08-25 08:28:07

标签: java ios objective-c

我正在尝试将JAVA中的以下方法转换为Objective-C

public static Object[] appendArray(Object[] objs,String...strings) {

      Object[] result= new Object[objs.length+strings.length];

      System.arraycopy(strings, 0, result, 0, strings.length);

      System.arraycopy(objs, 0, result, strings.length, objs.length);

      return result;
   }

当我想将其转换为obj-c时,它会是这样的:

 +(NSArray *)appendArray:(NSArray *)objs andStringField:(NSArray *)strings{
   }

是否有与Objective-C相同的System.arraycopy?

1 个答案:

答案 0 :(得分:1)

System.arraycopy生成一个浅表副本,所以它正在做的就是创建一个新数组。在你的情况下,你想要将2个数组附加在一起,这样你就可以创建一个可变的中间数组,然后添加两个源数组的内容:

NSMutableArray *transient = [objs mutableCopy];
[transient addObjectsFromArray:strings];

return transient;