1

我正在尝试将 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 的等价物?

4

1 回答 1

1

System.arraycopy做一个浅拷贝,所以它所做的就是创建一个新数组。在您的情况下,您希望将 2 个数组附加在一起,以便创建一个可变的中间数组,然后添加两个源数组的内容:

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

return transient;
于 2013-08-25T08:35:38.950 回答