swift 배열

2074 단어
2017년 05월 02일 16:27:33

직접 코드

     let cast = ["Vivien", "Marlon", "Kim", "Karl"]
     var strArray = [String]()
     for item in  cast{
          strArray += (item+",")
     }
     if  strArray.length > 0{
            strArray = strArray.subStringTo(strArray.length - 1)
     }
     print(list)
     // Prints "Vivien, Marlon, Kim, Karl"

위 코드는 많은 분들의 첫 번째 생각이고 아래 코드는 깔끔한 것 같아요.
  let cast = ["Vivien", "Marlon", "Kim", "Karl"]
  let list = cast.joined(separator: ", ")
  print(list)
  // Prints "Vivien, Marlon, Kim, Karl"

다이얼에서 숫자를 선택할 때.
let array  = Array(1...10)
/*
         
 */
let result = array.map { (item) -> String in
    return "\(item)"
}
let result = array.map {"\($0)"}

print(result)
//["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"]

swift 그룹의 대상에 대한 심도 있는 복사
class IntegerReference :NSObject{
    var value = 10
    
}
var firstIntegers = [IntegerReference(), IntegerReference()]
var secondIntegers = firstIntegers


firstIntegers[0].value = 100
print(secondIntegers[0].value) //           
// Prints "100"

secondIntegers[0].value = 50
print(firstIntegers[0].value) //           
// Prints "50"


배열에서 객체를 복사하려면 copyWithZone 메서드를 사용합니다.
class IntegerReference :NSObject,NSCopying{
    var value = 10
    func copy(with zone: NSZone? = nil) -> Any {
        let copy = IntegerReference()
        copy.value = self.value
        return copy
    }
}
var firstIntegers = [IntegerReference(), IntegerReference()]
var secondIntegers = firstIntegers.map{ ($0.copy() as! IntegerReference) }


firstIntegers[0].value = 100
print(secondIntegers[0].value) //                     
// Prints "10"

secondIntegers[0].value = 50
print(firstIntegers[0].value)
// Prints "100"

좋은 웹페이지 즐겨찾기