괴발개발 성장기

Study/Go 언어

[golang] 타입(type) 확인 하는 방법

지니유 2022. 2. 19. 22:41
반응형

# 배경

for range를 사용할때 string 타입은 rune 타입이라고 했는데 숫자가 나와서 당황했다. 그 숫자의 의미가 아스키코드라고 생각했었다. 그래서 타입이 뭐가 나오는지 궁금했다.

 

# 배경에 대한 예시

	str := "안녕! Genie"
    
    for index, value := range str {
		fmt.Println("index : ", index, " value : ",value)
		fmt.Println(reflect.TypeOf(value))
	}

결과

index :  0  value :  50504
int32

..

index :  12  value :  101
int32
  • rune 타입를 int32로 재정의한다고 한다.

# 타입(type) 확인 하는 방법

 reflect.TypeOf()

이 함수를 사용해서 타입을 확인할 수 있다.

 

# 예시

func CheckType() {
	num := 3
	boolean := true
	float := 5.2222
	arr := [6]string{"월", "화", "수", "목", "금"}
	str := "안녕! Genie"

	fmt.Println("string 타입 : ", reflect.TypeOf(str))
	fmt.Println("int 타입 : ", reflect.TypeOf(num))
	fmt.Println("bool 타입 : ", reflect.TypeOf(boolean))
	fmt.Println("float64 타입 : ", reflect.TypeOf(float))
	fmt.Println("배열 타입 : ", reflect.TypeOf(arr))

}

결과

string 타입 :  string
int 타입 :  int
bool 타입 :  bool
float64 타입 :  float64
배열 타입 :  [6]string
반응형