Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- kotlin
- 답글
- 코틀린
- snowpack
- FIle
- 쿠키
- git
- Spring
- degit
- 시큐어코딩
- 함수
- java#왕초보
- webpack
- parcel
- 상속
- sub query
- 스타일보험
- 숫자
- 스프링
- 게시판
- 버전일치
- React
- 왕초보
- SQL
- 오버라이드
- java
- 안드로이드
- Spinner
- 미니게임
- Android
Archives
- Today
- Total
YSHUSH
제어문(if, for, switch, while) 본문
if
자바의 if문
String str = "";
int num = 50;
if(num > 30){
str = "abc";
}else{
str = "bcd";
}
코틀린의 if문
var num:Int = 50
val str = if(num > 30){ "abc" }else{ "bcd" }
println("$str")
var num:Int = 50
var str:String = ""
if(num > 30){
str = "abc"
}else{
str = "bcd"
}
println("$str")
삼항연산자
자바
int num = 50;
String str = (num > 30) ? "abc":"bcd";
코틀린에는 없다 → 대신 if문을 한줄로 적는다.
var num:Int = 30
var str = if(num > 30) "abc" else "bcd"
println("$str")
is
val num = 123
if(num is Int){ // 상수 num이 Int일 경우
println("정수입니다")
}else if(num !is Int) { // 상수 num이 Int가 아닐경우
println("정수가 아닙니다")
}
&&, || = and, or
자바와는 달리 ()로 감싸주어야 한다
if((num > 0) && (num < 300)){
println("num는 30보다 작다")
}
if((num > 0) and (num < 300)){
println("num는 30보다 작다")
}
if((num > 0) || (num < 300)){
println("num는 300보다 작다")
}
if((num > 0) or (num < 300)){
println("num는 300보다 작다")
}
if문을 사용한 학점 매기기
val score = 93.5
val grade = if(score >= 90) {
'A'
}else if((score >= 80) && (score < 90)){
'B'
}else if((score >= 70) && (score < 80)){
'C'
}else{
'D'
}
println("score:$score grade:$grade")
val grade = if(score >= 90) {
'A'
}else if(score in 80.0..89.9){ // 80.0 <= score <= 89.9
'B'
}else if(score in 70.0..79.9){
'C'
}else{
'D'
}
println("score:$score grade:$grade")
Switch문
자바
코틀린에서 사용불가
String s = ""
int num = 3
switch(num){
case 0:
s = "abc"
break;
case 2:
s = "bcd"
break;
default:
s = "xyz"
}
코틀린
val a:Int = 3
val s = when(a){
0 -> "abc"
1, 2 -> "bcd"
else -> "xyz"
}
println("$s")
when
when을 사용한 범위 계산
val score = 85.0
var grade:Char = 'F'
when(score) {
in 90.0..100.0 -> grade = 'A'
in 80.0..89.9 -> grade = 'B'
in 70.0..79.9 -> grade = 'C'
!in 70.0..100.0 -> grade = 'F'
}
println("score: $score grade: $grade")
val score = 85.0
var grade:Char = 'F'
when{
score >= 90.0 -> grade = 'A'
score in 80.0..89.9 -> grade = 'B'
score in 70.0..79.9 -> grade = 'C'
score < 70.0 -> grade = 'F'
}
println("score:$score grade:$grade")
1부터 100까지 출력
for(i in 0 until 100){
println(i)
}
for(i in 99 downTo 0){ // 역순으로 출력
println(i)
}
for(i in 1..100){
println(i)
}
for(i in 0 until 100 step 2){ // 0부터 100까지 2의 배수만 출력
println(i)
}
while과 do...while문
var w:Int = 0
while(w < 10){
println("w:$w")
w++
}
w = 0
do{
w++
println("w:$w")
}while(w < 10)
continue, break
for (i in 1..5){
if(i == 3) break // 결과값 = 1, 2
println(i)
}
for(i in 1..5){
if(i == 4) continue // 결과값 = 1, 2, 3, 5
println(i)
}