반응형
1. 식 & 문
- 식 : 어떤 한가지 값으로 계산될 수 있는 프로그램 조각
- 문 : 값을 만들어 내지 않지만 프로그램의 흐름을 제어하는 역할
2. 배열
- 문자열은 문자를 여럿 연속으로 이어붙인 데이터라고 할 수 있다.
> 컬렉션 collection : 여러 원소가 저장된 데이터 구조
컬렉션 중 배열은 가장 오래된 컬렉션
인덱스 index 값만으로 그 값의 위치를 알 수 있다는 장점이 존재 = 배열
( 프로그래밍에서 주소 등을 표현할 때는 보통 16 진수 사용)
> 시간 복잡도 time complexity : 연산을 수행하는데 얼마나 오랜 시간이 걸리는지
> 상수 시간 연산 constant time operation : 입력과 관계없이 항상 일정한 시간이 걸려 수행할 수 있는 계산
- 빠르게 데이터를 읽고 쓸수 있다는 장점
- 쉽게 크기를 늘릴 수 없고 중간에 데이터 삽입할 때 삽입될 위치부터 그 이후의 데이터를 하나씩 뒤로 옮겨야 하기 때문에 원소 삽입 시간이 상대적으로 느리다는 단점
2-1. 배열 선언하기
* 배열을 선언하려면 원소의 타입 & 원소의 개수를 알아야 한다.
* 이미 알고 있는 경우라면 arrayOf 함수를 사용하여 배열을 선언할 수 있다.
* arrayof()를 이용하면 전달된 원소들의 개수에 따라 정해진다.
val oneToTen = arrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val oneToTen: Array<Int> = arrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
* 배열의 길이를 얻고싶으면 .size를 사용하고 원소를 얻고자 하면 [] 사이에 index 값을 넣어준다.
val c = oneToTen[0]
val s = oneToTen[oneToTen.size-1]
( 만약 배열 길이를 벗어난 인덱스 값을 넣게되면 ArrayIndexOutOfBoundsException 예외가 발생한다! )
2-2. 다른 방식으로 배열 생성하기
* 배열 크기는 알지만 원소값들을 알 수 없는 경우에는 arrayOfNulls를 사용하여 null로 배열을 채울 수 있다.
val array = arrayOfNulls<Int>(10)
* 배열 크기를 알고 각 위치에 어떤 값을 채워 넣을지 인덱스로부터 계산할 수 있는 경우에는 Array 함수를 이용한다.
val array = Array(10){it+1}
반응형
'스터디 > Kotlin' 카테고리의 다른 글
[ 스터디 ] 코틀린 : 함수 (0) | 2023.05.10 |
---|---|
[ 스터디 ] 코틀린 : 원시타입, 참조 타입 배열 (0) | 2023.05.09 |
[ 스터디 ] 코틀린 : for, while, do ... while (0) | 2023.05.09 |
[ 스터디 ] 코틀린 : if, when (0) | 2023.05.08 |
[ 스터디 ] 코틀린 : 값, 변수 (0) | 2023.05.08 |