问题:数字字母组合的字符串切片排序。
错误的情况举例
numbersSource := []string{"d10", "d20", "d1", "d3", "d8", "d46", "d0"}
sort.Strings(numbersSource)
fmt.Println(numbersSource)
// Output:
//[d0 d1 d10 d20 d3 d46 d8]
解决方法。把字符串的长度补齐成统一长度,具体操作如下:
numbers := []string{"d10", "d20", "d01", "d03", "d08", "d46", "d00"}
sort.Strings(numbers)
fmt.Println(numbers)
// Output:
//[d00 d01 d03 d08 d10 d20 d46]
以上的是方法之一。具体情况具体分析。