상세 컨텐츠

본문 제목

[Go] 4. Golang 데이터 타입 & 연산자 이해하기

golang

by 거니 노트 2024. 1. 4. 22:21

본문

개요

이번 포스팅에서는 golang에 데이터 타입과 연산자의 대해 다루고, 데이터 타입과 연산자에는 어떤 종류가 있고 어떻게 사용하는지 알아볼 예정입니다. 

 

1. 데이터 타입

1-1. bool 타입

bool 타입은 논리적인 값으로, True나 False 중 하나만을 가질 수 있습니다. 조건문이나 논리 연산에서 주로 사용합니다. 

var valueA bool = true
var valueB bool = false

 

1-2. 문자열 타입

문자열 타입은 텍스트를 나타내며, golang은 큰따옴표(" ") 또는 역따옴표(` `)로 문자열을 표현합니다. 

var text string = "Hello, World!"
var name string = `Guny Note`

 

1-3. 정수형 타입

정수형 타입은 정수 값을 나타냅니다. golang은 여러 정수 타입이 있으며, 이들은 크기와 부호에 따라 구분됩니다. 예를 들어, int32, int64, uint32, uint64 등이 있습니다. 

var age int = 25
var year int64 = 2024

 

1-4. 실수형 타입

실수형 타입은 소수점이 있는 숫자를 나타냅니다. Go 언어에서는 float32와 float64 같은 타입을 사용합니다. 

var temperature float64 = 36.5
var pi float32 = 3.14159

 

1-5. 슬라이스(slice)

배열과 유사하지만, 크기가 동적으로 변하는 시퀀스입니다. 

var colors []string = []string{"red", "blue", "green"}

 

1-6. 구조체(struct)

여러 필드를 가질 수 있는 사용자 정의 타입입니다. 

type Person struct {
    Name string
    Age  int
}
var person Person = Person{Name: "Guny Note", Age: 30}

 

1-7. 맵(map)

키-값 쌍을 저장하는 데 사용되는 컬렉션입니다. 

var capitals map[string]string = map[string]string{"France": "Paris", "Italy": "Rome"}

 

1-8. 인터페이스(interface)

메서드 시그니처의 컬렉션으로, 다형성을 구현하는 데 사용됩니다. 

type Shape interface {
    Area() float64
}

 

2. 연산자

2-1. 산술 연산자

종류 : +, -, *, /, %

var a int = 10
var b int = 3

var sum int = a + b        // 덧셈
var difference int = a - b // 뺄셈
var product int = a * b    // 곱셈
var quotient int = a / b   // 나눗셈
var remainder int = a % b  // 나머지

 

2-2. 비교 연산자

종류 : ==, !=, <, >, <=, >=

var x int = 5
var y int = 10

var isEqual bool = x == y          // 같음
var isNotEqual bool = x != y       // 다름
var isLess bool = x < y            // 작음
var isGreater bool = x > y         // 큼
var isLessOrEqual bool = x <= y    // 작거나 같음
var isGreaterOrEqual bool = x >= y // 크거나 같음

 

2-3. 논리 연산자

종류 : &&, ||, !

var c bool = true
var d bool = false
var and bool = c && d // AND 연산
var or bool = c || d  // OR 연산
var not bool = !c     // NOT 연산

 

2-4. 비트 연산자

종류 : &, |, ^, <<, >>

var e int = 6                  // 110(2진수)
var f int = 11                 // 1011(2진수)
var bitAnd int = e & f         // 비트 AND 연산
var bitOr int = e | f          // 비트 OR 연산
var bitXor int = e ^ f         // 비트 XOR 연산
var bitLeftShift int = e << 1  // 왼쪽 시프트
var bitRightShift int = e >> 1 // 오른쪽 시프트

 

2-5. 할당 연산자

종류 : =, +=, -=, *=, /=, %=, &=, |=, ^=, <<=, >>=

var g int = 5
g += 3  // g = g + 3
g -= 2  // g = g - 2
g *= 4  // g = g * 4
g /= 2  // g = g / 2
g %= 3  // g = g % 3
g <<= 2 // g = g << 2
g >>= 1 // g = g >> 1
g &= 2  // g = g & 2
g |= 4  // g = g | 4
g ^= 1  // g = g ^ 1

 

마치며

오늘은 golang에 데이터 타입과 연산자에 대해 알아보았습니다. 감사합니다.

관련글 더보기