Consider the following code:

var array1 = [1, 2, 3, 4, 5]

var array2 = array1

array2.append(6)

var len = array1.count

What’s the value of the len variable, and why?



Consider the following code: var array1 = [1, 2, 3, 4, 5] var array2 = array1 array2.append..

Answer / iosraj

The len variable is equal to 5, meaning that array1 has 5 elements, whereas array2 has 6 elements:

array1 = [1, 2, 3, 4, 5]

array2 = [1, 2, 3, 4, 5, 6]

When array1 is assigned to array2, a copy of array1 is actually created and assigned.

The reason is that swift arrays are value types (implemented as structs) and not reference types (i.e. classes). When a value type is assigned to a variable, passed as argument to a function or method, or otherwise moved around, a copy of it is actually created and assigned or passed. Note that swift dictionaries are also value types, implemented as structs.

Value types in swift are:

structs (incl. arrays and dictionaries)

enumerations

basic data types (boolean, integer, float, etc.)

Is This Answer Correct ?    0 Yes 0 No

Post New Answer

More Apple iOS Swift Interview Questions

What are the various ways to unwrap an optional in swift?

1 Answers  


What is the difference between nil and none in swift?

1 Answers  


What is swift programming language?

1 Answers  


Is singleton thread safe swift?

1 Answers  


What is the significance of “?” In swift?

1 Answers  


How can you declare a variable in swift?

1 Answers  


Consider the following code: let op1: Int = 1 let op2: UInt = 2 let op3: Double = 3.34 var result = op1 + op2 + op3 Where is the error and why? How can it be fixed?

1 Answers  


What is block in swift?

1 Answers  


What is argument label in swift?

1 Answers  


What is $0 in swift?

1 Answers  


Explain how Swift program is deployed?

1 Answers  


What is final class in swift?

1 Answers  


Categories