• 회원가입
  • 로그인
  • 구글아이디로 로그인

GO - Conditions (고랭 IF조건문)

1,044  
목차
  1. Go 조건문 소개
  2. if 조건문
  3. if...else... 조건문
  4. if...else if... 조건문
  5. if...else if...else... 조건문
  6. 안긴 if 조건문 (= 중첩 if문)

 

Go 조건문 소개

 

 각 조건에 따라 다른 작업 수행시킬 때 사용.

 


 

1.

조건은 참(true) / 거짓(false) 2가지로 판별.

 

2.

수학연산자/논리연산자 결합해 다양한 조건 정의 가능.

  • 수학연산자: <, <=, >, >=, ==, !=
  • 논리연산자: &&, ||, !

 

3.

Go에는 크게 if 조건문과 switch 조건문 존재.

 

 

if 조건문

 

해당 조건이 충족되면 실행. 

 


[구문]

 

if condition

    // 조건이 참이면 실행할 코드
}

 

PS. if 키워드는 소문자로 기재. (If 또는 IF 경우 에러 발생)


[예제1] - 값끼리 비교

 

package main

import ("fmt")


func main() {

  if 4 > 3 {

    fmt.Println("참")

  }

}

 

결과값: 참


[예제2] - 변수끼리 비교

 

package main

import ("fmt")


func main() {

  x := 4

  y := 3

  if x>y {

    fmt.Println("참")

  }

}

 

결과값: 참

 

if...else... 조건문

 

if조건이 거짓일 시 실행할 코드 지정하려면, else 구문 사용.

만약, if조건이 참이면 else 쪽은 무시하고 다음 코드로 진행.

 


[구문]

 

if condition {

  // if 조건이 참이면 실행할 코드

} else {

  // if 조건이 거짓이면 실행할 코드

}

 

PS1. else 키워드는 소문자로 기재해야 함. 

PS2. 「} else {」 부분은 한 줄에 입력해야 함. (※ 줄바꿈 시 에러 발생)


[예제1] - if 조건이 참이여서 if쪽 코드 실행

 

package main

import ("fmt")


func main() {

  hour := 9

  if hour < 12 {

    fmt.Println("오전")

  } else {

    fmt.Println("오후")

  }

}

 

결과값: 오전


[예제2] - if 조건이 거짓이여서, else쪽 코드 실행

 

package main

import ("fmt")


func main() {

  hour := 20

  if hour < 12 {

    fmt.Println("오전")

  } else {

    fmt.Println("오후")

  }

}

 

결과값: 오후


[예제3] - } else { 구문이 같은 줄이 아니라서 에러 발생

 

package main

import ("fmt")


func main() {

  hour := 20

  if hour < 12 {

    fmt.Println("오전")

  }

  else {

    fmt.Println("오후")

  }

}

 

결과값:

# command-line-arguments

.\homzzang.go:9:3: syntax error: unexpected else, expecting } 

 

if...else if... 조건문

 

우선 순위 조건을 나열할 때 사용.

 


[구문]

 

if condition1 {

   // condition1 조건이 참이면 실행

} else if condition2 {

   // condition1 조건이 거짓이고 condition2 조건이 참이면 실행

}

 

PS1. else if 조건문 구절을 여러 개 올 수 있음.

PS2. if와 else if 조건 모두 거짓일 시 아무 것도 실행 안 됨.

PS3. if와 else if 모두 거짓일 시 실행코드 지정하려면, else 구절 추가. 


[예제]

 

package main

import ("fmt")


func main() {

  hour := 15

  if hour < 12 {

    fmt.Println("오전")

  } else if hour < 18 {

    fmt.Println("오후")

  }

}

 

결과값: 오후 

 

if...else if...else... 조건문

 

if condition1 {

   // condition1 조건이 참이면 실행

} else if condition2 {

   // condition1 조건이 거짓이고 condition2 조건이 참이면 실행

} else {

  // if 및 else if 조건이 모두 거짓일 때 실행

}

 

PS. if와 else if 조건들이 모두 참이면, if쪽 코드만 실행됨. (예제3)


[예제1] - 시간을 기준으로 (오전/오후/저녁) 판별

 

package main

import ("fmt")


func main() {

  hour := 20

  if hour < 12 {

    fmt.Println("오전")

  } else if hour < 18 {

    fmt.Println("오후")

  } else {

    fmt.Println("저녁")

  }

}

 

결과값: 저녁


[예제2] - 두 수의 우열 비교

 

package main

import ("fmt")

 

func main() {

  a := 3

  b := 3

  if a < b {

    fmt.Println("a < b")

  } else if a > b {

    fmt.Println("a > b")

  } else {

    fmt.Println("a == b")

  }

}

 

결과값: a == b


[예제3] - if 조건과 else if 조건이 모두 참이면, if 조건만 실행.

 

package main

import ("fmt")


func main() {

  hour := 15

  if hour >= 12 {

    fmt.Println("오후")

  } else if hour > 18 {

    fmt.Println("저녁")

  } else {

    fmt.Println("오전")

  }

}

 

결과값: 오후 

 

안긴 if 조건문 (= 중첩 if문)

 

if 조건문 안에 if 조건문이 또 있는 경우에 해당.

(안팎의 if 조건문이 모두 참일때만 코드 실행함.)

 


[구문]

 

if condition1 {

   // condition1이 참이면 실행할 코드

  if condition2 {

     // condition1과 condition2 모두 참이면 실행할 코드

  }

}

 


[예제]

 

package main

import ("fmt")


func main() {

  hour := 20

  if hour >= 12 {

    fmt.Println("오후")

    if hour > 18 {

      fmt.Println("저녁")

    }

  } else {

    fmt.Println("오전")

  }

}

 

결과값:

오후

저녁



제목
GO - Home (고랭 입문)
GO - Intro (고랭 소개)
GO - Start (고랭 시작)
GO - Syntax (고랭 구문)
GO - Comments (고랭 주석)
GO - Variables (고랭 변수)
GO - Constants (고랭 상수)
GO - Output (고랭 출력)
GO - Data Types (고랭 데이터타입) - 자료형
GO - Arrays (고랭 배열)
GO - Slices (고랭 슬라이스)
GO - Operators (고랭 연산자)
GO - Conditions (고랭 IF조건문)
GO - switch (고랭 스위치조건문)
GO - For Loops (고랭 FOR반복문)
GO - Functions (고랭 함수)
GO - Maps (고랭 맵)
목록
찾아주셔서 감사합니다. Since 2012