2013-09-29 2 views
1

나는 골란에 익숙하지 않으며 샘플 취미로 lang을 탐구하려고 시도하고있다. 그 구조는 아래 그림과 같이 트리 구조를 작성해야한다. 프로젝트 파일 시스템과 마찬가지로 하나의 폴더에는 많은 폴더와 파일이 있습니다. 트리 구조는 더 이상의 분기가 없을 때까지 계속됩니다.golang Tree like Filesystem

  [Fol] 

[Fol,Fol,Fol] [Fil,Fil,Fil] 

내 솔루션이하기 : 저를 설계하는 시간을 복용

type Fol struct{ 
    slice of Fol 
    slice of Fil 
} 

그것을, 그래서 도움을 한 번에 모든 아주 많이 감사합니다. 이 같은 https://stackoverflow.com/a/12659537/430294

답변

5

뭔가 :

안부, 바이 니스

마지막으로 나는 아래 링크에서 제공되는 솔루션을 사용?

Playground link

package main 

import "fmt" 

type File struct { 
    Name string 
} 

type Folder struct { 
    Name string 
    Files []File 
    Folders []Folder 
} 

func main() { 
    root := Folder{ 
     Name: "Root", 
     Files: []File{ 
      {"One"}, 
      {"Two"}, 
     }, 
     Folders: []Folder{ 
      { 
       Name: "Empty", 
      }, 
     }, 
    } 
    fmt.Printf("Root %#v\n", root) 
} 

인쇄

Root main.Folder{Name:"Root", Files:[]main.File{main.File{Name:"One"}, main.File{Name:"Two"}}, Folders:[]main.Folder{main.Folder{Name:"Empty", Files:[]main.File(nil), Folders:[]main.Folder(nil)}}}