Share This
Связаться со мной
Крути в низ
Categories
//Go для начинающих. Основные операторы, типы данных и их преобразования

Go для начинающих. Основные операторы, типы данных и их преобразования

go dlja nachinajushhih osnovnye operatory tipy dannyh i ih preobrazovanija edb33c0 - Go для начинающих. Основные операторы, типы данных и их преобразования

Энтузиаст-разработчик с опытом более трех лет. Сфера интересов — backend, кибербезопасность, web 3.0 В этом уроке мы изучим фундаментальные понятия в программировании: переменные, типы данных и операторы, а также научимся преобразовывать один тип данных в другой.

go dlja nachinajushhih osnovnye operatory tipy dannyh i ih preobrazovanija 42224f9 - Go для начинающих. Основные операторы, типы данных и их преобразования

← Часть 3 Организация кода. Пакеты, импорты, модули. Ввод-вывод текста

Переменные

go dlja nachinajushhih osnovnye operatory tipy dannyh i ih preobrazovanija 60054a7 - Go для начинающих. Основные операторы, типы данных и их преобразования

Переменные в Go

Что такое переменная

Переменные – это именованные места в памяти, предназначенные для временного или постоянного хранения значений.

Использование переменных в программировании позволяет:

  1. Хранить данные. Переменные прендназначены для хранения значений, что позволяет запоминать информацию и использовать её в разных частях кода.
  2. Обрабатывать данные. Значения переменных могут изменяться в процессе написания программы, что обеспечивает гибкость при работе с данными.

Способы задания переменных в Go

В Go есть несколько способов задания переменных:

  1. С помощью ключевого слова var с указанием имени переменной:
         var num1 int // инициализировали переменную num1 с нулевым значением num1 = 1 // явно присвоили переменной num1 значение 1 var num2 int = 2 // явно присвоили переменной num2 значение 2 var num3 = 3 // явно присвоили переменной num3 значение 3      
  1. Краткое объявление с помощью оператора присваивания :=, который сам распознает тип данных в зависимости от значения:
         num := 1 // переменная num типа int str := "abcd" // переменная num типа string     
  1. Множественное присваивание значений с помощью ключевого слова var или оператора :=
         var a, b int var num1, num2 int = 1, 2 var num3, num4 = 3, 4 var ( 	num5 int = 5 	num6 int = 6 )  num7, str := 7, "string"      

В Go по умолчанию переменные инициализируются своим нулевым значением. Для целых чисел это будет 0, для строк – пустая строка (""), для логических значений – false и так далее.

👨‍💻 Библиотека Go разработчика Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека Go разработчика» 🎓 Библиотека Go для собеса Подтянуть свои знания по Go вы можете на нашем телеграм-канале «Библиотека Go для собеса» 🧩 Библиотека задач по Go Интересные задачи по Go для практики можно найти на нашем телеграм-канале «Библиотека задач по Go»

Константы

Константы – это величины с неизменяемым значением, предназначенные для хранения фиксированных данных. Их вычисление происходит во время компиляции программы. В Go для создания констант используется ключевое слово const:

         const pi = 3.1415926 pi = 3 // ошибка  const e float64 = 2.71828      

Вывод значения и типа переменной

Для вывода значения и типа переменной нужно передать её как аргумент в функции fmt.Print (или fmt.Println для перевода на новую строку) и fmt.Printf соответственно из ранее изученного нами пакета fmt:

         num := 100 fmt.Print(num) // 100 fmt.Printf("%T", num) // int      
  1. Функция fmt.Printf форматирует вывод в соответствии с шаблоном. В нашем примере вместо %T на вывод поступит тип переменной num.

Правила именования переменных в Go

Стоит помнить, что имена переменных в Go:

  1. Могут содержать только латинские буквы, цифры и символ подчеркивания (a-z, A-Z, 0-9, и _ ).
  2. Должны начинаться с буквы или символа подчеркивания.
  3. Чувствительны к регистру. То есть name, NAME и Name – это три разные переменные.
  4. Не могут являться ключевыми словами, определенными в Go: var, break, const, type и так далее. Полный список недопустимых имён можно найти в спецификации Go.

Помимо правил рекомендуется следовать следующим соглашениям по именованию переменных:

  1. По возможности используйте короткие имена, особенно для локальных переменных и итераторов в цикле, если это не приводит к потере смысла. Пример: cnt вместо countValues, i вместо index и так далее.
  2. Чем дальше от своего объявления находится имя, тем более описательным оно должно быть. Также это касается глобальных и уникальных переменных.
  3. Для экспортируемых переменных (которые видны вне текущего пакета) используйте заглавные буквы. Пример: GetUser, GenerateValue.

Типы данных

go dlja nachinajushhih osnovnye operatory tipy dannyh i ih preobrazovanija d39aa53 - Go для начинающих. Основные операторы, типы данных и их преобразования

Типы данных в Go

Типы данных в программировании определяют, какие виды значений могут храниться в переменных и какие операции можно выполнять над этими значениями. Использование типов данных облегчает понимание и поддержку кода, а их правильный выбор важен для оптимизации работы программы и экономии ресурсов компьютера.

Типы данных в Go делятся на две категории: базовые и составные. К первым относятся целые, вещественные и комплексные числа, строки, байты и руны. К составным типам данных относятся массивы, структуры, срезы, мапы, каналы, указатели, функции и интерфейсы.

В этом уроке мы рассмотрим базовые типы данных, а с составными познакомимся в следующих статьях.

Базовые типы данных

Целые числа – int

Целые числа в Go представлены 10 типами данных, выбор которых зависит от необходимого диапазона значений. Выделяют две группы чисел: знаковые (int) и беззнаковые (uint). Первые из них могут быть отрицательными и за счет этого обладают меньшим диапазоном значений, в то время как вторые – только положительные и с большим диапазоном.

Каждый из целочисленных типов бывает 1-, 2-, 3- и 4-битным и записывается как int8, int16, int32, int64 (для uint аналогично) соответственно. Количество бит определяет диапазон значений. Например, для int8 – от -128 до 127, int16 от -32768 до 32767 и так далее.

  • int — тип по умолчанию для целого числа. Если при инициализации переменной вы не укажете тип, он по умолчанию будет int.
  • Объявление:
         var num1 int = 1 // целое число var num2 uint = 2 // целое беззнаковое число var num3 int8 = 3 // целое число разрядностью 1 байт      

Вещественные числа – float

Дробные числа в Go представлены типом float, который может быть 32- и 64-битным. Формат его представления регулируются стандаром IEEE754.

  • float64 — тип по умолчанию для вещественного числа. Если при инициализации переменной вы не укажете тип, он по умолчанию будет float64.
  • Объявление:
         var num1 float32 var num2 float64 = 4.5 c := 1.2 // float64      
  • Максимальные и минимальные значения для типа float можно узнать с помощью функций math.MaxFloat64 и math.SmallestNonzeroFloat64 (для 32-битных нужно изменить 64 на 32) соответственно.
         fmt.Printf("%.50e\\n", math.MaxFloat64)      

Комплексные числа – complex

Комплексные числа в Go определяются двумя типами с разной разрядностью – compex64 и complex128, которые содержат действительные и мнимые части, принадлежащие типам float32 и float64 соответственно. Они часто используются в научных целях, но в реальной разработке встречаются редко.

  • Объявление:
         // 1 способ var num1 complex64 var num2 complex128 num3 := 1 + 2i  // 2 способ var num 4 = complex(1.2, 3.4) // 1.2 + 3.4i      

Логические значения – bool

Тип данных bool может иметь одно из двух логических значений – true (истина) или false (ложь). Он часто используется в условных операторах и логических выражениях.

  • Объявление:
         var a bool b := true c := false       

Строки – string

Строки в Go представляют собой неизменяемую последовательность байтов. Каждый символ в них может занимать разное количество байтов в зависимости от используемой кодировки.

  • Объявление:
         var a string b := "строка"       

Руны – rune

Тип данных rune в Go является псевдонимом для int32 и используется для представления Unicode символов.

  • Для знакомства с Unicode рекомендуем прочитать статью «Символы Unicode: о чём должен знать каждый разработчик»
  • Объявление:
         var a rune b := []rune("abc")  // вывод на экран fmt.Println(a, b) // 0 [97 98 99]       

Байты – byte

Тип данных byte в Go – это псевдоним для беззнакового 8-битного целочисленного типа (uint8). Он может принимать значения от 0 до 255, поэтому используется для представления ASCII-символов.

  • Объявление:
         var a byte b := []byte("abc")  // вывод на экран fmt.Println(a, b) // 0 [97 98 99]      

***

Содержание самоучителя

  1. Особенности и сфера применения Go, установка, настройка
  2. Ресурсы для изучения Go с нуля
  3. Организация кода. Пакеты, импорты, модули. Ввод-вывод текста.
  4. Переменные. Типы данных и их преобразования. Основные операторы.

  • 0 views
  • 0 Comment

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Связаться со мной
Close