Skip to content

Latest commit

Β 

History

History
96 lines (87 loc) Β· 2.52 KB

File metadata and controls

96 lines (87 loc) Β· 2.52 KB

Constants

Go μ—μ„œ μƒμˆ˜λ₯Ό μ„ μ–Έν•  λ•ŒλŠ” const ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•œλ‹€.
μƒμˆ˜ λͺ…λͺ… κ·œμΉ™μ€ λ³€μˆ˜μ™€ λ™μΌν•˜λ‹€. λ‹€λ₯Έμ μ΄λΌλ©΄ μƒμˆ˜λŠ” μ„ μ–Έκ³Ό μ΄ˆκΈ°ν™”λ₯Ό ν•¨κ»˜ ν•΄μ•Ό ν•œλ‹€λŠ” 것이닀.

Declaration & Initialization

μƒμˆ˜ μ„ μ–Έκ³Ό λ™μ‹œμ— λ°˜λ“œμ‹œ ν•¨κ»˜ ν•΄μ£Όμ–΄μ•Ό ν•˜λŠ” κ°’μ˜ μ΄ˆκΈ°ν™”.
Syntax

  • 단일 μƒμˆ˜ μ„ μ–Έ 및 μ΄ˆκΈ°ν™”
    const <constantName> = <value>
    μžλ£Œν˜•μ€ μƒλž΅ κ°€λŠ₯ν•˜λ‹€.
    const <constantName> <dataType> = <value>
const jordan = "Amman"
const peru string = "Lima"
  • 볡수 μƒμˆ˜ μ„ μ–Έ 및 μ΄ˆκΈ°ν™” (같은 μžλ£Œν˜•)
    Comma(,) 둜 ꡬ뢄

const <constant1>, <costant2> = <value1>, <value2>
const <constant1>, <costant2> <dataType> = <value1>, <value2>

const barium, lanthanum = 56, 57
const thorium, protactinium int = 90, 91
  • 볡수 μƒμˆ˜ μ„ μ–Έ 및 μ΄ˆκΈ°ν™” (λ‹€λ₯Έ μžλ£Œν˜•)
const (
    <constant1> = <value1>
    <constant2> = <value2>
    <constnat3> = <value3>
)

Enumeration

Go μ—μ„œ μƒμˆ˜μ˜ μ—°μ†λ˜λŠ” 값을 μœ„ν•΄ iota λ₯Ό μ‚¬μš©ν•  수 μžˆλ‹€.

  • 그리슀 μ•ŒνŒŒλ²³μ—μ„œ iotaλŠ” 10 을 λœ»ν•œλ‹€.
  • μˆ˜ν•™μ—μ„œ iotaλŠ” ν—ˆμˆ˜ λ‹¨μœ„ i λ₯Ό λœ»ν•œλ‹€.
  • iotaλŠ” 0λΆ€ν„° μ‹œμž‘ν•œλ‹€.
  • iotaλŠ” μƒμˆ˜μ˜ μ—°μ†λœ 값을 μœ„ν•΄μ„œλ§Œ 쓰인닀.

λ§Žμ€ 경우 μƒμˆ˜λŠ” μ—°μ†λ˜λŠ” 값을 κ°€μ§„λ‹€.

λŒ€ν‘œμ μœΌλ‘œ μš”μΌμ˜ ν‘œν˜„μ΄ μžˆλ‹€.

// w/o iota
const Sunday    = 0
const Monday    = 1
const Tuesday   = 2
const Wednesday = 3
const Thursday  = 4
const Friday    = 5
const Saturday  = 6

// with iota
const (
   Sunday = iota // 0
   Monday        // 1
   Tuesday       // 2
   Wednesday     // 3
   Thursday      // 4
   Friday        // 5
   Saturday      // 6
)

Truthy value 와 Falsy value의 ν‘œν˜„

const (
    zero, off, wrong = iota, iota, iota // μƒμˆ˜μ˜ 개수만큼 iotaλ₯Ό 써주어야 ν•œλ‹€.
    one, on, right
)
// output
 0 0 0 
 1 1 1

1 λΆ€ν„° μ‹œμž‘ν•˜κΈ° μœ„ν•΄μ„œλŠ” μ•„λž˜μ™€ 같은 방법을 μ‚¬μš©ν•œλ‹€.

const (
   usa = iota + 1 // 1
   africa         // 2
   europe         // 3
)

κ°’ skip ν•˜κΈ°

  • μ›μΉ˜ μ•ŠλŠ” 값을 skip ν•˜κΈ° μœ„ν•΄ unserscore _ λ₯Ό μ‚¬μš©ν•  수 μžˆλ‹€.
const (
      Math = iota // 0
      English     // 1
      _
      _
      Physics     // 4
)