고랭 베이직

Go lang의 데이터 유형


  • 정수
  • 정수
  • int8
  • int16
  • int32
  • int64
  • 단위
  • 단위
  • uint8
  • uint16
  • uint32
  • uint64
  • 부유물
  • float32
  • 플로트64
  • 스트링
  • 슬라이스
  • 어레이
  • 지도
  • 구조체
  • 인터페이스{}
    10.포인터
    11.부호 없는 정수에는 양수 값만 할당할 수 있습니다
  • .

    데이터 유형의 기본값


  • int의 기본값은 0입니다.
  • float의 기본값은 0.0입니다.
  • 문자열의 기본값은 ""입니다.
  • 슬라이스의 기본값은 nil입니다.
  • 배열의 기본값은 할당된 데이터 유형에 따라 다릅니다.
  • 맵의 기본값은 nil입니다.
  • 구조체의 기본값은 nil입니다.
  • 인터페이스의 기본값은 nil입니다.
  • 포인터의 기본값은 nil입니다.

  • 데이터 유형 설명



    일부분
  • 슬라이스가 항목 수를 정의하지 않음
  • 슬라이스의 기본값은 nil입니다.
  • 슬라이스에는 용량과 길이가 있습니다.
  • 슬라이스 데이터를 추가할 수 있습니다.
  • 배열처럼 슬라이스에 액세스할 수 있습니다.
  • 슬라이스에 무제한 데이터를 할당할 수 있습니다.

  • package main
    import "fmt"
    func main() {
        a := []int{1,3,4,5}
        res := sum(a)
        fmt.Println("slice: ", res)
        res = multi(a)
        fmt.Println("slice: ", res)
    }
    
    func sum(number []int) int {
        total := 0
        for _, num:= range number {
            total += num
        }
        return total
    }
    func multi(number []int) int {
        total := 1
        for _, num:= range number {
            total *= num
        }
        return total
    }
    


    정렬
  • 데이터 수가 배열에 정의되어 있습니다.
  • 배열의 기본값은 할당된 데이터 유형에 따라 다릅니다.
  • 어레이에 길이만 있고 용량이 없습니다.
  • 배열을 추가할 수 없고 배열을 인덱싱할 수 있습니다
  • .
  • 배열의 크기도 호출되며 더 많은 데이터를 할당할 수 없습니다.
  • 배열에서 키와 값을 인덱싱할 수 있습니다.
  • 배열의 길이를 확인해야 하는 경우 기본 내장 함수인 len()을 사용하여 터미널이나 웹에서 필요한 데이터를 인쇄할 수 있습니다.

  • package main
    import "fmt"
    func main() {
        a := [5]int{}
        fmt.Println("integer Array: ", a)
    
        var b = [4]string{
            "codemen",
            "m",
            "codemen",
            "codemen",
        }
        fmt.Println("Name: ", b)
    
        colors := [4]string{
            "roje","gris","azul","black"}
    
            fmt.Println("Name: ", colors)
    }
    


    지도
  • 맵의 기본 키는 정수 또는 문자열일 수 있습니다. 값은 정수, 문자열, 슬라이스, 배열 또는 맵과 같은 모든 유형의 데이터가 될 수 있습니다.

  • package main
    
    import "fmt"
    
    type Vertex struct {
        Lat, Long float64
    }
    
    var m map[string]Vertex
    func main() {
        m = make(map[string]Vertex)
        m["Bell Labs"] = Vertex{
            40.68433, -74.39967,
        }
        fmt.Println(m["Bell Labs"])
    }
    
    var a string = "codemen"
    var m map[string]string
    func main() {
        m = make(map[string]string)
        m["Hello String"] = a
        fmt.Println(m["Hello String"])
    }
    


    구조체
  • 구조체 사용자는 데이터 유형을 정의합니다.

  • 상호 작용
  • 인터페이스는 동적 용도로 사용할 수 있습니다. 인터페이스에서 모든 종류의 데이터를 할당할 수 있습니다.
  • 인터페이스에서 메서드를 선언/서명할 수 있습니다. 인터페이스에서 구현할 수 없습니다.
  • 인터페이스에서 메소드 유형, 인수 및 반환 유형을 정의할 수 있습니다.

  • 바늘
  • 포인터가 변수의 주소를 보유함
  • 포인터는 Ram의 메모리 주소를 보유합니다.
  • 변수 값을 동적으로 변경하기 위해 포인터를 사용할 수 있습니다
  • .
  • 블록, 함수, for 루프, if 조건에서 변수 값 중 하나를 변경하려는 경우 포인터를 사용하여 변수 값을 유지하고 이를 통해 변경할 수 있습니다.
  • 좋은 웹페이지 즐겨찾기