1. Array 배열 기본 예시
var languages = ["Swift", "Objective-C", "Kotlin", "Python"]
print(languages[0])
print(languages[1])
print(languages)
languages[1] = "Flutter"
print(languages)
var sample = [String]()
print(sample)
2. Array 데이터 가공 예제
let Intro_message = "\n <<< Explain Message : "
let Last_message = " >>>"
var languages = ["Swift", "Objective-C", "Kotlin", "Python"]
print("\(Intro_message)Test Printing\(Last_message)")
print(languages[0])
print(languages[1])
print("\(Intro_message)Basic Array Check\(Last_message)")
print(languages)
print("\(Intro_message)1 위치의 값을 다른 값으로 바꾸기\(Last_message)")
languages[1] = "Flutter"
print(languages)
print("\(Intro_message)(insert,at) 1 위치에 값 넣고 그 뒤 값은 밀어버리기\(Last_message)")
languages.insert("Java", at:1)
print(languages)
print("\(Intro_message)(append) 맨 뒤에 값 1개 추가하기\(Last_message)")
languages.append("C++")
print(languages)
print("\(Intro_message)(append,contentsOf) 맨 뒤에 값들 추가하기\(Last_message)")
var append_new = ["Dart", "GoLang"]
languages.append(contentsOf: append_new)
print(languages)
print("\(Intro_message)(remove,at) 3 위치에 값 추가하기\(Last_message)")
languages.remove(at:3)
print(languages)
print("\(Intro_message)(removeFirst) 맨 앞에 값 삭제하기\(Last_message)")
languages.removeFirst()
print(languages)
print("\(Intro_message)(removeFirst) 맨 뒤에 값 삭제하기\(Last_message)")
languages.removeLast()
print(languages)
print("\(Intro_message)(popLast) 맨 뒤에 값 출력하며 삭제하기\(Last_message)")
var result_of_pop = languages.popLast()
print(result_of_pop!)
print(languages)
print("\(Intro_message)(dropFirst) 앞에서 몇개 값 삭제한 결과만 return하고 기존 array는 수정하지 않기\(Last_message)")
var result_of_dropfirst = languages.dropFirst(_:2)
print(languages)
print(result_of_dropfirst)
print("\(Intro_message)(dropLast) 뒤에서 몇개 값을 삭제한 결과만 return하고 기존 array는 수정하지 않기\(Last_message)")
var result_of_droplast = languages.dropLast(_:2)
print(languages)
print(result_of_droplast)
print("\(Intro_message)(removeSubrange) 값 범위로 삭제하기\(Last_message)")
languages.removeSubrange(1..<3)
print(languages)
languages.append(contentsOf: ["C++", "C++", "C++"])
print("\(Intro_message)(firstIndex) 특정 값의 인덱스 찾기\(Last_message)")
var result_of_firstindex = languages.firstIndex(of:"C++")
print(languages)
print(result_of_firstindex!)
print("\(Intro_message)(lastIndex) 특정 값의 인덱스 찾기\(Last_message)")
var result_of_lastindex = languages.lastIndex(of:"C++")
print(languages)
print(result_of_lastindex!)
print("\(Intro_message)(contains) 특정 값 포함 여부 확인\(Last_message)")
var result_of_contain1 = languages.contains("Java")
print(result_of_contain1)
var result_of_contain2 = languages.contains("Dart")
print(result_of_contain2)
print("\(Intro_message)(count) array의 값 개수 세기\(Last_message)")
var result_of_count = languages.count
print(result_of_count)
print("\(Intro_message)(isempty) 비어있는지 확인\(Last_message)")
var result_of_isempty = languages.isEmpty
print(result_of_isempty)
Data Type이 Optional인 값에 대한 처리 참조글 : https://growingsaja.tistory.com/764
3. array의 가장 마지막 값, 첫번재 값 추출하기
var name_list : [String] = ["kim", "lee", "lim", "song", "moon"]
print(name_list.first!)
print(name_list.last!)
4. Any로 데이터 타입 설정한 Array
하나의 Array 안에 여러 타입의 데이터를 넣을 수 있습니다.
let Intro_message = "\n <<< Explain Message : "
let Last_message = " >>>"
print("\(Intro_message)Any data type array\(Last_message)")
var any_array = [Any]()
print(any_array)
any_array.append("a")
print(any_array)
any_array.append(1)
print(any_array)
5. Array에서 지정한 data type과 다른 데이터를 insert 시도할 경우 발생하는 오류 확인
Any를 사용하지 않은 Array에서 유사 작업을 할 경우 아래와 같은 에러가 발생합니다.
let Intro_message = "\n <<< Explain Message : "
let Last_message = " >>>"
print("\(Intro_message)Int data type array\(Last_message)")
var int_array = [Int]()
print(int_array)
int_array.append(7)
print(int_array)
int_array.append(3.141592)
print(int_array)
'Development > iOS' 카테고리의 다른 글
[Swift] 기본 문법 정리 3 : dictionary (0) | 2023.02.22 |
---|---|
[Swift] 기본 문법 정리 2 : Array (배열) - 문제 풀이 (0) | 2023.02.21 |
[SOLVED][Swift] warning: result of call to 'popLast()' is unused (0) | 2023.02.17 |
[Swift] 기본 문법 정리 1 : 기본적인 데이터 선언 및 print 출력 - String, Int, Double (0) | 2023.02.17 |
[SwiftUI] Text 출력하고 HStack, VStack, ZStack 활용하기 (0) | 2023.02.07 |