Вот код:
var arr1 = [1, 2, 3, 4]
var arr2 = [1, 2, 3, 4]
if arr1 == arr2 {
println("Equal")
} else {
println("Not Equal")
}
// console output: Equal
let slice1 = arr1[0..4]
let slice2 = arr2[0..4]
if slice1 == slice2 {
println("Equal")
} else {
println("Not Equal")
}
// console output: Equal
Это просто, но следующий код:
if arr1[0..4] == arr2[0..4] {
println("Equal")
} else {
println("Not Equal")
}
// console output: Not Equal
Почему результат "Не равен", а не "Равный"?
Можно ли использовать оператор == для сравнения содержимого типа значений двух массивов или двух срезов? Если нет, то почему я мог получить исключенные результаты первых двух операторов if
?