Какие основные структуры данных есть в Go?
Этот вопрос помогает оценить знание базовых структур данных в Go и понимание их применения.
Короткий ответ
Основные структуры данных в Go включают массивы, слайсы, карты (maps), строки и структуры (structs). Они покрывают широкий спектр задач, от работы с последовательностями данных до создания сложных пользовательских типов.
Длинный ответ
1. Основные структуры данных:
- Массивы: Фиксированные по размеру последовательности элементов одного типа.
- Слайсы: Динамические последовательности, которые используют массивы под капотом.
- Карты (maps): Хэш-таблицы для хранения пар ключ-значение.
- Строки: Наборы неизменяемых байтов, используемые для работы с текстом.
- Структуры (structs): Пользовательские типы данных, объединяющие несколько полей разного типа.
2. Пример использования:
package main
import "fmt"
func main() {
// Слайсы
slice := []int{1, 2, 3}
slice = append(slice, 4)
fmt.Println("Slice:", slice)
// Карты
m := map[string]int{"one": 1, "two": 2}
m["three"] = 3
fmt.Println("Map:", m)
// Структуры
type Point struct {
X, Y int
}
p := Point{X: 10, Y: 20}
fmt.Println("Struct:", p)
}
3. В каких случаях использовать:
- Массивы: Для работы с фиксированными наборами данных.
- Слайсы: Для динамически изменяемых данных.
- Карты: Когда нужно быстро находить значение по ключу.
- Структуры: Для объединения данных в логически связанные группы.