티스토리 뷰

golang snippet

go slice sort

crazybug 2022. 2. 25. 16:10

Go 1.8 부터 슬라이스를 정렬할 수 있습니다.  정렬 예는 다음과 같습니다.

 

단일 필드

sort.Slice(results.files, func(i, j int) bool {
		return results.files[i].name < results.files[j].name
	})

 

멀티필드

sort.Slice(results.files, func(i, j int) bool {
		var sortedByFilePathonly, sortedByFileName bool

		// sort by file.patholny  (ascending)
		sortedByFilePathonly = results.files[i].pathonly < results.files[j].pathonly

		// sort by file.name (ascending)
		if results.files[i].pathonly == results.files[j].pathonly {
			sortedByFileName = results.files[i].name < results.files[j].name
			return sortedByFileName
		}

		return sortedByFilePathonly
	})

'golang snippet' 카테고리의 다른 글

현재 디렉토리 current directory  (0) 2022.02.25
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/12   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
글 보관함