CodeKata
파이썬으로 알고리즘 풀던게 생각나서 힘들다 ㅠ
아직 많이 풀진 않았지만 확실히 코틀린이 간결하게 코드를 작성할 수 있다는 것을 많이 느꼈다.
하지만 2차 함수 푸는 것을 우연히 보게 되었는데,,,, 2차 함수 푸는 날이 오면 파이썬 살짝 그리울거같다.
1. 자연수 뒤집어 배열로 만들기
class Solution { fun solution(n: Long): IntArray = n.toString().reversed().map { i -> i.toString().toInt() }.toIntArray() }
1) reversed를 사용해서 string으로 된 n을 뒤집기
2) map()을 붙여 리스트로 변환
2. 제곱과 제곱근(루트) 구하기
- pow() : 거듭제곱
- sqrt() : 제곱근
double만 받기때문에 toDouble()을 해준 뒤 사용한다.
(import kotlin.math.(---) import 해야 사용가능 / 앞에 Math.를 붙이면 생략하고 사용가능 )
import kotlin.math.pow import kotlin.math.sqrt var x:Double = 121.0 var y:Double = 3.0 //제곱근 println("x의 제곱근 = ${sqrt(x)}") //제곱 println("y의 제곱 = ${y.pow(2)}")
//추가로 제곱의 합의 제곱근 구하기 import kotlin.math.hypot println("(3제곱 + 4제곱)의 제곱근 = ${hypot(3.0, 4.0)}") // (3제곱 + 4제곱)의 제곱근 = 5.0
3. sort
sortedArrayDescending()
- 내림차순으로 정려된 새로운 배열 반환
- 원본 배열은 그대로
sortedArray()
- 오름차순으로 정렬된 새로운 배열 반환
- 원본 배열은 그대로
sort()
- 원본 배열을 오름차순으로 정렬
sortDescending()
- 원본 배열을 내림차순으로 정렬
강의
Parameter / Argument
- 강의를 듣다보면 파라미터~~ , 알규먼트~~~ 하다보면 대충 알고 있지만 갑자기 정확히 넘어가고 싶어서 찾아보았다.
- Parameter : 함수를 정의할 때 사용되는 변수
- Argument : 실제로 함수가 호출될 때, 넘기는 변수 값
function plus (num1, num2) {
return num1 + num2;
} // num1과 num2는 parameter
plus(10, 20);
// 10과 20은 argument
인수
- argument에서 인수란 함수에 간주되는 (원시적인 또는 객체의)값 이다.
Inflate
사전캠프 강의 3주차를 들으면 inflate를 사용하신다. inflate ?
- android에서 inflate는 xml에 표기된 레이아웃들을 메모리에 로딩된 후 객체화 시키는 과정이다.
- 각기 다른 화면들을 한화면에 동적으로 띄우고 싶은 경우 사용된다.
setContentView() 함수랑 똑같은건가 ?
- 정답은 땡. Fragment는 setContentView가 없다. 그러면 직접 객체화 시켜서 메모리에 올려야한다.
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
return inflater.inflate(R.layout.fragment_second, container, false)
}
Bundle
- 여러가지 타입의 값을 저장하는 Map클래스이다.
- 예를 들면, string 값을 Bundle 클래스에 Mapping하는 것이다.
- 그런데 android에서는 Activity간에 데이터를 주고 받을 때 Bundle 클래스를 사용하여 데이터를 전송한다.
'Kotlin > TIL' 카테고리의 다른 글
TIL 6 (01.26) (1) | 2024.01.26 |
---|---|
TIL 5 (01.25) (1) | 2024.01.25 |
TIL 3 (01.23) (1) | 2024.01.23 |
TIL 2 (01.22) (0) | 2024.01.22 |
TIL 1 (01.19) (0) | 2024.01.19 |