구조체 초기화하기
Coddy GO 여정의 기초 섹션에 포함된 레슨 — 109개 중 98번째.
Go에서 구조체를 초기화하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법들을 살펴보겠습니다.
필드 이름을 사용하여 구조체를 생성합니다:
type Person struct {
name string
age int
}
func main() {
// 필드 이름을 사용하여 초기화
person1 := Person{name: "Alice", age: 30}
fmt.Println(person1)
}출력 결과는 초기화된 구조체를 보여줍니다:
{Alice 30}필드 이름 없이 구조체를 초기화할 수도 있지만, 순서대로 값을 제공해야 합니다:
person2 := Person{"Bob", 25}
fmt.Println(person2)결과:
{Bob 25}제로 값(zero values)을 가진 빈 구조체를 생성합니다:
person3 := Person{}
fmt.Println(person3)결과:
{ 0}챌린지
초급이 챌린지에서는 Go에서 구조체(struct)를 초기화하는 연습을 합니다. 이름(name), 나이(age), 고용 여부 필드를 가진 Person 구조체를 정의했습니다.
여러분의 작업은 다음 정보를 사용하여 새로운 Person 구조체 인스턴스를 초기화하는 것입니다:
- Name: "Alice"
- Age: 28
- IsEmployed: true
그런 다음 이 사람에 대한 정보를 출력할 것입니다.
치트 시트
Go에서 구조체를 초기화하는 방법에는 여러 가지가 있습니다:
필드 이름을 사용하여 초기화:
person1 := Person{name: "Alice", age: 30}필드 이름 없이 초기화 (값은 순서대로여야 함):
person2 := Person{"Bob", 25}제로 값(zero values)으로 빈 구조체 생성:
person3 := Person{}직접 해보기
package main
import "fmt"
// Person 구조체 정의
type Person struct {
Name string
Age int
IsEmployed bool
}
func main() {
// TODO: 이름은 "Alice", 나이는 28, isEmployed는 true로 Person 구조체 초기화
// 필드 이름을 사용하거나 구조체 리터럴 구문을 사용하세요
var alice Person
// 사람의 정보 출력
fmt.Printf("Name: %s\n", alice.Name)
fmt.Printf("Age: %d\n", alice.Age)
fmt.Printf("Employed: %t\n", alice.IsEmployed)
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
2변수와 기본 자료형
변수란 무엇인가`:=`를 이용한 타입 추론정수 (int)부동 소수점 수불리언 (Booleans)문자열 (Strings)제로 값 (Zero Values)상수명명 규칙요약 - 변수와 타입