面试题答案
一键面试- 转换方法:
- 使用
strconv.Itoa
函数将int
类型的值转换为string
类型。然后遍历int
类型的切片,将每个元素转换后放入新的string
类型切片中。
- 使用
- 代码示例:
package main
import (
"fmt"
"strconv"
)
func intSliceToStringSlice(intSlice []int) []string {
stringSlice := make([]string, len(intSlice))
for i, num := range intSlice {
stringSlice[i] = strconv.Itoa(num)
}
return stringSlice
}
- 可能遇到的错误及处理:
strconv.Itoa
函数在正常情况下不会返回错误,因为它总是能将int
类型的值转换为string
类型。但是,如果在实际应用中,int
类型的值是通过其他可能出错的方式获取的(例如从外部输入解析得到int
值),在转换为string
前应该先处理获取int
值时可能出现的错误。例如,如果使用strconv.Atoi
从字符串解析int
,解析过程可能会出错,可以这样处理:
package main
import (
"fmt"
"strconv"
)
func main() {
str := "123a"
num, err := strconv.Atoi(str)
if err != nil {
fmt.Println("解析int出错:", err)
return
}
strResult := strconv.Itoa(num)
fmt.Println(strResult)
}
在这个例子中,先处理 strconv.Atoi
可能出现的错误,避免后续 strconv.Itoa
因为无效的 int
值而导致逻辑问题。
调用示例:
func main() {
intSlice := []int{1, 2, 3}
result := intSliceToStringSlice(intSlice)
fmt.Println(result)
}
在 main
函数中,先定义了 int
类型的切片 intSlice
,然后调用 intSliceToStringSlice
函数进行转换,并打印结果。