1
0
mirror of https://github.com/MADTeacher/go_basics.git synced 2025-11-23 21:34:47 +02:00
Files
go_basics/part_3/3.10/10.go
2025-06-04 18:38:52 +03:00

25 lines
553 B
Go

package main
import "fmt"
func CreateNewMap[K comparable, V any](k []K, v *[]V) *map[K]V {
// создание словаря из среза и указателя на срез
newMap := make(map[K]V)
if len(k) < len(*v) {
for idx, elem := range k {
newMap[elem] = (*v)[idx]
}
} else {
for idx, elem := range *v {
newMap[k[idx]] = elem
}
}
return &newMap
}
func main() {
intSlice := []int{1, 3, 4, 6, 7}
stringSlice := []string{"Oo", "^_^", "-_-"}
fmt.Println(CreateNewMap(intSlice, &stringSlice)) // &map[1:Oo 3:^_^ 4:-_-]
}