[Go] Go 언어 구조체(Struct) 정리

2021. 1. 17. 18:02Programming Language/Go

반응형

■ Go 언어 구조체

Struct는 Object와 같이 여러 자료형의 데이터를 저장할 수 있는 자료구조이다.

쉽게 말해 Map의 경우 key의 자료형과 value의 자료형을 설정하고 해당 자료형의 데이터만 저장할 수 있다. 하지만, Struct는 string, int, slice등 다양한 자료형의 데이터를 class와 유사하게 저장할 수 있다. 또한, Struct를 생성하고 필드에 데이터를 삽입하는 작업은 다양하게 가능하며 기호에 맞게 사용할 수 있다.


Struct

예시) 이름과 나이, 주소를 저장하는 Struct를 선언하고, 임의의 데이터를 저장하여 
Struct에 저장된 모든 데이터를 호출하시오.

 * Struct를 생성하고 필드에 데이터를 삽입하는 작업은 다양하게 가능하며 기호에 맞게 사용할 수 있다.
type person struct {    
       name    string    
       age     int    
       address string
}

func main(){
        // 1. 모든 필드 데이터 저장
        myInfo1 := person{name: "hyunmin", age: 28, address: "서울시 용산구"}

        // 2. 모든 필드명을 생략하고 선언한 필드 순서대로 데이터 저장
        myInfo2 := person{"hyunmin", 28, "서울시 용산구"}

        // 3. 공백 Struct를 생성하고 모든 데이터 저장
        myInfo3 := person{}    
        myInfo3.name = "hyunmin"    
        myInfo3.age = 28    
        myInfo3.address = "서울시 용산구"

        fmt.Println(myInfo1)
        fmt.Println(myInfo2)
        fmt.Println(myInfo3)
}

// 출력 결과
// {hyunmin 28 서울시 용산구}
// {hyunmin 28 서울시 용산구}
// {hyunmin 28 서울시 용산구}

반응형