본문 바로가기

언어52

[Kotlin 문법 종합] - 여러 인스턴스 리턴, 자신의 객체 전달 @@수정하기 1. 여러 인스턴스 리턴 : 두 개 이상의 데이터를 포함하는 데이터클래스를 만들고 인스턴스 리턴하기 //메소드는 기본적으로 하나의 데이터를 리턴함 1) Pair = 2개의 인스턴스 리턴 var chicken = Chicken() var eggs = chicken.getEggs() var listEggs = eggs.toList() // 리스트로 관리 var firstEgg = listEggs[0] // = eggs.first var secondEgg = listEggs[1] // = eggs.second println("달걀의 종류는 ${eggs} 입니다.") //(달걀, 맥반석) // Pair println("리스트 달걀의 종류는 ${listEggs} 입니다.") //[달걀, 맥반석] // toList.. 2024. 3. 6.
[Kotlin 문법 종합] - 자료형 변환, 타입확인 @@@ 수정하기 1. 자료형 변환 1) 일반 자료형간의 변환 (1) 숫자 자료형끼리 = .to자료형() var num1 = 20 var num2 = 30.2 var num3 = num2.toInt() var num4 = num1.toDouble() (2) 문자열 -> 숫자 @@@@근데 Integer.parseInt 안해도 toInt만 해도 되던데...?? 뭐지 다시보기 var strNum5 = "10" var strNum6 = "10.21" var num5 = Integer.parseInt(strNum5) //int로 변환 var num6 = strNum6.toDouble() //double로 변환 2) 객체 자료형간의 변환 : 상속관계에서 가능 (1) 업 캐스팅 (부모클래스의 자료형을 가지고 자식클래스의 객체 생성) .. 2024. 3. 6.
[Kotlin 문법 종합] - Single-expression function, 싱글턴 (@@질문하기) 1. Single-expression function : 람다식을 이용해 메소드를 간결하게 정리 가능 * 람다식 구조 : 다른 함수의 인자로 넘김 / 함수의 결과값으로 반환 / 변수에 저장 하는 함수 {매개변수1, 매개변수2... -> 코드 } * 예시 1 : 세 개의 숫자를 받아 평균을 반환하는 함수(를 람다식으로 정의) fun add(num1:Int, num2:Int, num3:Int) = (num1+num2+num3)/3 fun main(){ println(lambdaExample({x,y -> x+y}, 20, 30)) //람다식 함수를 인자로 넘김 } fun lambdaExample(sum: (Int, Int) -> Int, a: Int, b: Int): Int = sum(a, b) //위와 동.. 2024. 3. 6.