Ответ 1
Это будет ArrayList
и object[]
соответственно, если вы учтете слабый характер типизации NSMutableArray
и NSArray
.
Массивы и списки в С# (по крайней мере для .NET 2.0 и выше) также могут быть строго типизированы, поэтому в зависимости от того, какой тип объекта вы храните, вы можете указать этот тип. Например, если у вас есть только NSString
объекты в NSMutableArray
в вашем коде Objective-C, вы должны использовать List<string>
, и если вы используете их в NSArray
, вы должны использовать string[]
с фиксированный размер.
Чтобы быстро инициализировать и заполнить список или массив в С#, вы можете использовать то, что известно как инициализатор коллекции:
List<string> list = new List<string> { "foo", "bar", "baz" };
string[] array = { "foo", "bar", "baz" }; // Shortcut syntax for arrays
string
в С# неизменен, как и NSString
в рамках Foundation. Каждый раз, когда вы назначаете новую строку переменной, вы просто указываете или ссылаетесь на переменную на другой объект.