상세 컨텐츠

본문 제목

[ 코틀린(Kotlin) 기초 문법 : 변수와 자료형 ]

헬창개발자(김선홍)/Kotlin

by 알 수 없는 사용자 2020. 9. 11. 18:15

본문

* 이 포스팅은 디모의 Kotlin 강좌를 보고 복습 용도로 제작되었습니다.

 

* 강좌 : www.youtube.com/watch?v=8RIsukgeUVw&list=PLQdnHjXZyYadiw5aV3p6DwUdXV2bZuhlN&index=1


* 코틀린은 안드로이드 및 자바를 대체할 목적으로 만들어진 언어

* 코틀린의 특징

 - 최신의 패러다임을 적용하여 자바의 약점들을 개선하면서 Java 가상 머신과는 호환될 수 있게 만들어짐.

 - 기존에 자바로 개발이 가능했던 웹 서비스, 안드로이드 개발 뿐 아니라 자바스크립트 및 스위프트와의 연동개발도 가능

 

 

* 툴 : 코틀린 전용 웹 컴파일러 : play.kotlinlang.org

 

Kotlin Playground: Edit, Run, Share Kotlin Code Online

 

play.kotlinlang.org

->기초 학습이나 코드 연습을 하기에 적절한 웹 컴파일러 입니다.

 

1. 변수의 선언과 자료형 종류

변수의 선언에는 두 가지 방법이 있습니다.

var : 일반적으로 통용되는 변수이고 언제든지 읽고 쓰기가 가능합니다.

val : 선언시에만 초기화가 가능하고, 그 후엔 값을 바꿀 수 없습니다.

 

변수 선언은 var 변수명 : 자료형 = 초기값 형태입니다.

코틀린은 기본 변수에서 null을 표시하지 않기 때문에 꼭 변수를 초기화 시켜야합니다.

변수를 null로 초기화를 원하면 var 변수명 : 자료형? = null 로 하시면 null을 값으로 허용합니다.

 

소스코드는 정수형,실수형,문자,문자열,Boolean을 선언해보고 출력해보는 간단한 코드입니다.

/**
 * You can edit, run, and share this code. 
 * play.kotlinlang.org 
 */

//ClassName 파스칼 표기법
//functionName 카멜 표기법 
//변수의 선언(두가지방법)
    //var : 일반적으로 통용되는 변수, 언제든지 읽기 쓰기 가능
    //val : 선언시에만 초기화 가능. 그 후 값 변경 불가능
fun main() {
   
   	//변수 선언
   	//정수형 변수
   	var a : Int = 100
    //변수 출력 println()
    //코틀린은 기본 변수에서 null을 표시하지 않음.
    println(a)
    
    var b : Int? = null //null 을 허용함. 
    println(b)
    
    //기본자료형 : 자바와 거의 동일
    //10진수 ,16진수, 2진수
    var intValue:Int = 1234
    var LongValue:Long = 1234L //10진수 뒤에 L
    var intValueByHex:Int = 0x1af //16진수 앞에 0x
    var intValueByBin:Int = 0b111100 //2진수 앞에 0b
    println("intValue : " + intValue + " LongValue : " + LongValue + " intValueByHex : " + intValueByHex + " intValueByBin : " + intValueByBin )
    //8진수의 표기 지원 하지 않음
    
    //실수. 소수점 포함
    var doubleValue:Double = 123.5
    var doubleValueWithExp:Double = 123.5e10 //지수표기법
    var floatValue:Float = 123.5f //16비트 float 형
    println("doubleValue : " + doubleValue + " doubleValueWithExp : " + doubleValueWithExp + " floatValue : " + floatValue)
    
    //문자, UTF-16BE로 관리 글자 하나하나가 2바이트 메모리 공간 차지
    var charValue:Char = 'a'
    println("charValue : " + charValue)
    
    //Boolean
    var booleanValue:Boolean = true
    println("booleanValue : " + booleanValue)
    
    //문자열 
    val stringValue = "one line string test"
    println("stringValue : " + stringValue)
    //여러줄의 문자열
    val multiLineStringValue = """multline
    string, hello world.! welcome cup world!
    test"""
    println("multiLineStringValue : " + multiLineStringValue)
    
    
   
}

2. 출력 화면

 

댓글 영역