Kotlin (코틀린) 14

[Kotlin] 코틀린의 for문 / in · .. · until · step · downTo · indices

코틀린에서 for문을 사용하는 방법을 알아보겠다. 각 문법마다 하나씩 직접 테스트해보는 내용이니,문법 요약만 필요한 사람은 최하단의 요약 탭으로 이동하기 바란다.   기본 사용법 : ( in  .. )   코틀린에서의 for문은 자바와 조금 다르다.문법을 먼저 보자.// 자바 for문for (초기화식 ; 조건식 ; 증감연산) { 반복할 내용 }// 코틀린 for문for (변수 in 범위) { 반복할 내용 }  대표적인 특징으로는 코틀린에서는 세미 콜론(;)을 사용하지 않는다. 그리고 in 연산자를 사용하며 범위는 마침표 2개(..)로 표현할 수 있다.    이제 예시를 보겠다.for (i in 0..5) { println(i)} 결과) 0부터 5까지 모두 출력한 것을 확인할 수 있다.   한 줄로 표현하..

Kotlin (코틀린) 2024.06.03

[Kotlin] 클래스 · 자료형 이름을 내 마음대로 사용하기 / 클래스에 별명 붙이기 / 자료형에 별명 붙이기

이번 포스팅에서는 클래스에 별명을 붙여 사용하는 방법을 알아본다.    클래스에 별명 붙이기  지난 포스팅에서 다뤄보았던 as 키워드를 이용하여클래스에 원하는 별명을 붙여 사용할 수 있다.  AbledStudent 라는 데이터 클래스를 생성해주고,해당 클래스를 사용할 메인 클래스에서 인스턴스화하는 과정이다.// 데이터 클래스data class ExampleStudent(val name: String, val age: Int)// 메인import ExampleStudent as Student...val student = Student("Oscar", 29) 사용할 클래스에서 import 할 때, as 키워드로 별명을 붙여 캐스팅할 수 있다.   당연히 코드를 작성할때만 별명대로 사용할 수 있는 것이고,실제..

Kotlin (코틀린) 2024.06.02

[Kotlin] 스마트 캐스트 - Number / Any / is 연산자 / as 연산자

이번 포스팅에서는 Number, Any 자료형과 is, as 연산자를 통해 코틀린의 스마트 캐스트에 대해 알아보자.    스마트 캐스트?  프로그래밍에서 캐스팅이란 주로 형 변환을 뜻한다. 스마트 캐스트를 직역하면 똑똑한 형 변환이라 할 수 있다.이는 컴파일러가 자동으로 형 변환을 해주는 행위를 뜻한다.  코틀린에서 스마트 캐스트가 어떤 상황에서 사용되는지,또 어떤 방법으로 적용할 수 있는지 알아보자.   Number  Number 클래스는 숫자를 저장할 수 있는 특수한 자료형이며대표적으로 스마트 캐스트가 적용되는 자료형이다. Number 형으로 정의된 변수는 저장되는 값에 따라 자료형이 변한다.  스마트 캐스트가 적용되는 것을 확인해 보자.var num: Number = 10println(num)num..

Kotlin (코틀린) 2024.05.26

[Kotlin] 문자열 이어 붙이기 / 형식화된 다중 문자열 사용하기 / ($, """) 기호

문자열을 이어 붙여서 출력하는 상황에 주로 사용할 수 있는 코틀린의 기호를 알아보자.   문자열 이어 붙이기 $  코틀린에서 문자열을 이어 붙여야 하는 상황에서는 $ 기호를 사용할 수 있다. 이어 붙일 문자열의 모든 영역을 큰 따옴표("")로 감싸고,객체를 넣을 때는 $ 기호를 붙여 사용하면 된다.  간단한 예제를 2가지 경우로 나눠서 확인해보자.   ✅ 단순 객체만을 이어 붙일 때 val str1 = "Oscar"val str2 = "is"val str3 = "gentleman"val speak = "$str1 $str2 $str3"println(speak)  결과)  큰 따옴표("")와 (+) 기호를 덕지덕지 이어 붙이던 기존 방식보다훨씬 깔끔한 가독성을 자랑한다.      ✅ 단순 객체가 아닌 경우..

Kotlin (코틀린) 2024.05.21

[Kotlin] 코틀린의 String 저장 방식은 다르다?

코틀린에서의 String 자료형 저장 방식에 대해 알아보자.  String  다들 알고 있는 문자열 자료형 String이다. 대부분의 자료형은 기본형 자료형(원시 타입)에 속하지만,String만은 참조형 자료형이라는 것도 알고 있을 것이다. 그리고 참조형 자료형의 실제 데이터는 Heap 영역에 저장되고,Stack 영역에는 Heap 영역의 주소를 가리키는 값이 저장된다는 것도 많이 언급했었다.  하지만 코틀린에서의 String은 위의 기존 방식대로 데이터를 저장하지 않는다..! 이것이 이번 포스팅의 주 내용이다.   String도 클래스잖아..!  그렇다. 당연히 String은 클래스이기에 참조형 자료형으로 구분된다.  일단, 지난 포스팅에서의 예제를 재탕해보자.// 간단한 데이터 클래스 생성data cl..

Kotlin (코틀린) 2024.05.20

[Kotlin] 코틀린의 참조 타입 → 원시 타입 변환 확인 / 기본형 · 참조형 자료형의 비교 원리 / 이중 등호와 삼중 등호 (==, ===

앞선 코틀린의 자료형을 소개하는 포스팅에서 언급한 내용을 확인하는 포스팅이다. 다소 쓸데없고(?) 딱딱할 수 있지만, 알아두면 좋은 가벼운 내용만을 다룬다. 주된 내용은 참조 타입으로 사용하는 기존 원시 타입 변수가 실제로 원시 타입으로 변환 처리되는지 확인하는 과정이다. 기본형? 참조형? 기본형과 참조형은 앞선 많은 포스팅들에서 다루었던 내용이다. 궁금하다면 참고하기 바란다. [Kotlin] 코틀린 자료형 / 타입 캐스팅 / 값 비교이번 포스팅에서는 코틀린의 자료형에 대해 알아보자. 자료형 코틀린에서는 자료형을 원시 타입과 참조 타입으로 구분하지 않는다.모든 자료형은 참조 타입으로 통일되었다. 타입키워oscarstory.tistory.com [Kotlin] 코틀린 래퍼 클래스 Wrapper Class지..

Kotlin (코틀린) 2024.05.19

[Kotlin] 코틀린의 조건문 / if / when

이번 포스팅에서는 코틀린의 흐름 제어 중, 조건문에 대해 알아보자. 다른 언어와 크게 다를 것이 없기에, 조건문의 정의나 형식 등기초적인 내용은 생략하고 간단한 예제와 함께 알아보겠다.   if 문  단순히 if문만 생각하면 크게 어려울 것이 없다. 간단한 예제를 보자.val name = "Oscar"var result = ""if (name == "Oscar") { result = "상남자"} else { result = "하남자"}println(result) // 출력 : 상남자 자바와 크게 다를 것이 없는 if문이다.   하지만 코틀린에서의 if문은 값을 반환하는 표현식으로도 사용할 수 있다.이 부분이 코틀린의 if문을 소개하고자 하는 핵심이다.val name = "Osca..

Kotlin (코틀린) 2024.05.18

[Kotlin] 코틀린의 null / null 처리 연산자 ? ?. !! / 엘비스 연산자 ?:

이번 포스팅에서는 코틀린에서의 null에 대해 알아보자.   코틀린에서의 null 처리  앞선 코틀린 특징 포스팅에서도 언급했지만,코틀린은 NPE로부터 안정성을 보장할 정도로 null을 예민하게 다룬다.  코틀린이 null을 어떻게 처리하는지 알아보기 전에,우리가 null을 주로 어떠한 경로로 만나는지부터 간단히 생각해 보자. 객체를 null과 관련지어 다음 3가지로 구분할 수 있다.- 구조 상 절대 null이 될 수 없는 객체- 구조 상 무조건 null인 객체- null이 될 수도 있는 객체   개발을 하다보면 느끼겠지만, 무조건 null인 객체는 코드 내 경고로서 미리 확인할 수 있다. 여기서 중요한 점은, null이 될 수도 있는 객체다.  코틀린은 개발자가 작성한 코드 중 이미 null인 객체 ..

Kotlin (코틀린) 2024.05.11