Как использовать операторы в Golang

Зарегистрируйтесь и зарабатывайте 1000$ в день ⋙

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

Как использовать операторы в Golang

Арифметические операторы

Эти операторы используются для выполнения операций над операндами в языке Go:

  • Сложение: «+» складывает два операнда. Например: х+у.
  • Вычитание: «-» вычитает два операнда. Пример: ху.
  • Умножение: «*» умножает два операнда. Например: х*у.
  • Деление: «/» делит первый операнд на второй операнд. Например: х/у.
  • Остаток: оператор «%» возвращает остаток при делении первого операнда на второй операнд. Например: х%у.

 Примечание: -, +, !, &, *, <- и ^ также называются унарными операторами, и приоритет унарных операторов выше. Операторы ++ и — являются операторами, они не являются выражениями, поэтому они находятся вне иерархии операторов.

Например:

//Minh họa chương trình Go dùng toán tử số học
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// Phép cộng
result1:= p + q 
fmt.Printf("Result of p + q = %d", result1) 
	
// Phép trừ
result2:= p - q 
fmt.Printf("\nResult of p - q = %d", result2) 
	
// Phép nhân
result3:= p * q 
fmt.Printf("\nResult of p * q = %d", result3) 
	
// Division 
result4:= p / q 
fmt.Printf("\nResult of p / q = %d", result4) 
	
// Modulus 
result5:= p % q 
fmt.Printf("\nResult of p %% q = %d", result5) 
} 

Результат:

Kết quả của p + q = 54
Kết quả của p - q = 14
Kết quả của p * q = 680
Kết quả của p / q = 1
Kết quả của p % q = 14

Реляционные операторы

Операторы отношения используются для сравнения двух значений. Давайте рассмотрим каждого оператора по отдельности:

  • Оператор '=='(Равно) проверяет, равны ли два указанных операнда. Если равно, возвращает true. В противном случае возвращается false. Например, 5==5 вернет значение true.
  • Оператор '!='(Не равно) проверяет, равны ли два указанных операнда. В противном случае возвращается значение true. В противном случае возвращается false. Это точное логическое дополнение оператора «==». Например, 5!=5 вернет false.
  • Оператор '>'(Больше чем) проверяет, больше ли первый операнд второго операнда. Если больше, возвращается значение true. Если меньше, возвращается false. Например, 6>5 вернет значение true.
  • Оператор «<» (меньше) проверяет, меньше ли первый операнд второго операнда. Если меньше, возвращается значение true. Если нет, возвращается false. Например, <5 вернет
  • Оператор '>='(Больше, чем равно) проверяет, больше ли первый операнд второго операнда или равен ему. Если больше или равно, возвращается значение true. Если меньше или равно, возвращается false. Например: 5>=5 вернет true.
  • Оператор «<=» (меньше или равно) проверяет, меньше ли первый операнд второго операнда или равен ему. Если значение больше или равно, возвращается значение true. Если меньше или равно, возвращается false. Например: <=5 также вернет

Например:

// Minh họa chương trình Go dùng toán tử quan hệ
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// ‘=='(Equal To) 
result1:= p == q 
fmt.Println(result1) 
	
// ‘!='(Not Equal To) 
result2:= p != q 
fmt.Println(result2) 
	
// ‘<‘(less than)="" result3:="p">< q="" fmt.println(result3)="" ‘="">'(Greater Than) 
result4:= p > q 
fmt.Println(result4) 
	
// ‘>='(Greater Than Equal To) 
result5:= p >= q 
fmt.Println(result5) 
	
// ‘<='(less than="" equal="" to)="" result6:="p"><= q="" fmt.println(result6)="" }="">

Результат:

false
true
false
true
true
false

Логические операторы

Они используются для объединения двух или более условий/ограничений или для дополнения оценки рассматриваемого начального условия.

  • И: Оператор «&&» возвращает значение true, если оба рассматриваемых условия выполнены. В противном случае возвращается false. Например, a && b возвращает значение true, когда и a, и b являются истинными (т.е. не равны нулю).
  • ИЛИ: Оператор '||' Возвращает значение true, если выполняется одно (или оба) рассматриваемых условия. В противном случае возвращается false. Например: а || b возвращает true, если a или b являются истинными (т.е. не равны нулю). Конечно, он возвращает значение true, когда и a, и b истинны.
  • Логическое НЕ: «!» Оператор Возвращает значение true, если рассматриваемое условие не выполняется. В противном случае возвращается false. Например: !a возвращает true, если a ложно, то есть когда a = 0.

Например:

// Minh họa chương trình Go dùng toán tử logic
package main 
import "fmt"
func main() { 
	var p int = 23
	var q int = 60
		
	if(p!=q && p<=q){ fmt.println("true")="" }="" if(p!="q" ||=""><=q){ fmt.println("true")="" }="" if(!(p="=q)){" fmt.println("true")="" }="" }="">

Результат:

True
True
True

Побитовые операторы

В языке Go существует 6 побитовых операторов, которые работают на уровне битов или используются для выполнения побитовых операций. Ниже приведены побитовые операторы:

  • & (побитовое И): принимает два числа в качестве операндов и выполняет операцию И над каждым битом двух чисел. Результатом AND будет только 1, если оба бита равны 1.
  • | (побитовое ИЛИ): принимает два числа в качестве операндов и выполняет операцию ИЛИ над каждым битом двух чисел. Результат ИЛИ равен 1, если любой из двух бит равен 1.
  • ^ (побитовое исключающее ИЛИ): принимает два числа в качестве операндов и выполняет операцию исключающего ИЛИ над каждым битом двух чисел. Результатом XOR является 1, если два бита различны.
  • < (сдвиг влево): берет два числа, сдвигает биты первого операнда влево, второй операнд определяет количество позиций для сдвига
  • >> (сдвиг вправо): Берем два числа, сдвигаем биты первого операнда вправо, второй операнд определяет количество позиций для сдвига.
  • &^ (И НЕ): Это явный побитовый оператор.

Например:

// Minh họa chương trình Go dùng toán tử bitwise
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// & (bitwise AND) 
result1:= p & q 
fmt.Printf("Result of p & q = %d", result1) 
	
// | (bitwise OR) 
result2:= p | q 
fmt.Printf("\nResult of p | q = %d", result2) 
	
// ^ (bitwise XOR) 
result3:= p ^ q 
fmt.Printf("\nResult of p ^ q = %d", result3) 
	
// < (left="" shift)="" result4:="p">< 1="" fmt.printf("\nresult="" of="" p="">< 1="%d" ,"="" result4)="">> (right shift) 
result5:= p >> 1
fmt.Printf("\nResult of p >> 1 = %d", result5) 
	
// &^ (AND NOT) 
result6:= p &^ q 
fmt.Printf("\nResult of p &^ q = %d", result6) 
	
	
} 

Результат:

Kết quả của p & q = 0
Kết quả của p | q = 54
Kết quả của p ^ q = 54
Kết quả của p < 1="68" kết="" quả="" của="" p="">> 1 = 17
Kết quả của p &^ q = 34

Оператор присваивания

Оператор присваивания используется для присвоения значения переменной. Левый операнд оператора присваивания — это переменная, а правый операнд оператора присваивания — это значение. Значение справа должно иметь тот же тип данных, что и переменная слева, в противном случае компилятор вернет ошибку. Ниже показаны различные типы операторов присваивания:

  • “="(Простое присваивание): Это простейший оператор присваивания. Этот оператор используется для присвоения значения справа переменной слева.
  • «+=»(Дополнительное назначение): Этот оператор представляет собой комбинацию операторов «+» и «=». Этот оператор сначала добавляет текущее значение левой переменной к значению правой, а затем присваивает результат левой переменной.
  • «-=» (минус-присваивание): этот оператор представляет собой комбинацию операторов «-» и «=». Этот оператор сначала вычитает текущее значение левой переменной из значения правой, а затем присваивает результат левой переменной.
  • «*=» (присваивание умножения): этот оператор представляет собой комбинацию операторов «*» и «=». Этот оператор сначала умножает текущее значение левой переменной на значение правой, а затем присваивает результат левой переменной.
  • «/=» (присваивание деления): этот оператор представляет собой комбинацию операторов «/» и «=». Этот оператор сначала делит текущее значение левой переменной на значение правой, а затем присваивает результат левой переменной.
  • «%="(Остаток присваивания): Этот оператор представляет собой комбинацию операторов «%» и «=». Этот оператор сначала берет остаток текущего значения левой переменной, учитывая значение справа, а затем присваивает результат левой переменной.
  • «&=» (побитовое И): этот оператор представляет собой комбинацию операторов «&» и «=». Этот оператор сначала выполняет побитовую операцию «И» между текущим значением левой переменной и значением правой, а затем присваивает результат левой переменной.
  • «^=» (побитовое исключающее ИЛИ): этот оператор представляет собой комбинацию операторов «^» и «=». Этот оператор сначала выполняет операцию «побитового исключающего ИЛИ» над текущим значением левой переменной и значением правой, а затем присваивает результат левой переменной.
  • «|=»(побитовое включающее ИЛИ): этот оператор представляет собой комбинацию оператора «|» операторы и «=». Этот оператор сначала выполняет операцию «побитового включающего ИЛИ» над текущим значением левой переменной и значением правой, а затем присваивает результат левой переменной.
  • «<=: Этот оператор представляет собой комбинацию операторов < ' и '="'». Этот оператор сначала «сдвигает» текущее значение переменной слева на значение справа, а затем присваивает результат переменной справа.
  • «>>=»: этот оператор представляет собой комбинацию операторов «>>» и «=». Этот оператор сначала выполняет операцию «сдвиг вправо» над текущим значением левой переменной и значением справа, а затем присваивает результат левой переменной.

Например:

// Minh họa chương trình Go dùng toán tử gán
package main 
	
import "fmt"
	
func main() { 
var p int = 45
	var q int = 50
	
// “=”(Simple Assignment) 
p = q 
fmt.Println(p) 
	
// “+=”(Add Assignment) 
	p += q 
fmt.Println(p) 
	
//“-=”(Subtract Assignment) 
p-=q 
fmt.Println(p) 
	
// “*=”(Multiply Assignment) 
p*= q 
fmt.Println(p) 
	
// “/=”(Division Assignment) 
	p /= q 
fmt.Println(p) 
	
	// “%=”(Modulus Assignment) 
	p %= q 
fmt.Println(p) 
	
} 

Результат:

50
100
50
2500
50
0

Другие операторы

  • &: Этот оператор возвращает адрес переменной.
  • *: Этот оператор предоставляет указатель на переменную.
  • <-: Имя этого оператора — receive. Используется для получения значения из
// Minh họa chương trình sử dụng toán tử khác
package main 
	
import "fmt"
	
func main() { 
a := 4
	
// Dùng địa chỉ của toán tử (&) toán tử trỏ gián tiếp (*)

b := &a 
fmt.Println(*b) 
*b = 7
fmt.Println(a) 
} 

Результат:

4
7
Sign up and earn $1000 a day ⋙

Leave a Comment

Как использовать константы в Golang

Как использовать константы в Golang

Что такое Constant или Const в Golang? Вот что вам нужно знать об использовании констант в Go.

Нестабильные функции в Golang

Нестабильные функции в Golang

Вариативные функции в Go позволяют передавать функции переменное количество аргументов. Вот все, что вам нужно знать о volatile-функциях в Golang.

Именованные возвращаемые параметры в Golang

Именованные возвращаемые параметры в Golang

В Golang именованные возвращаемые параметры часто называются именованными параметрами. Golang позволяет именовать возвращаемые параметры или результаты функций в сигнатуре или определении функции.

Ключевые слова в Go

Ключевые слова в Go

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

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

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

Тип данных определяет тип данных, которые может содержать допустимая переменная Go. В языке Go типы делятся на четыре категории следующим образом:

Аргументы функций в Golang

Аргументы функций в Golang

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

Функция, возвращающая несколько значений в Golang

Функция, возвращающая несколько значений в Golang

В языке Go разрешено возвращать несколько значений из функции с помощью оператора return. Другими словами, в функции оператор return может возвращать несколько значений.

Оператор Switch в Go

Оператор Switch в Go

В Golang, как и в большинстве других языков программирования, есть оператор switch. Вот как использовать оператор switch в Golang.

Случаи, которые следует знать при использовании операторов выбора в Golang

Случаи, которые следует знать при использовании операторов выбора в Golang

В этой статье мы узнаем, как использовать регистр по умолчанию, чтобы избежать взаимоблокировки. Но сначала давайте выясним, что такое случай взаимоблокировки при использовании команды select в Golang?

Анонимные структуры и поля в Golang

Анонимные структуры и поля в Golang

Анонимные структуры в Golang — это временные структуры без имен, используемые для одноразовых целей, в то время как анонимные поля допускают встраивание неименованных полей.

Как использовать Руну в Golang

Как использовать Руну в Golang

Что такое руны в языке Голанг? Как использовать руну в Golang? Статья даст вам ответ.

Идентификатор Void в Golang

Идентификатор Void в Golang

_(подчеркивание) в Golang называется пустым идентификатором. Идентификатор — определяемое пользователем имя компонентов программы, используемое для целей идентификации.

Как создать базовую программу на Golang

Как создать базовую программу на Golang

Привет, мир! это первая базовая программа на любом языке программирования. Вы можете написать эту первую программу на Golang, следуя инструкциям ниже.

Как установить Go на Windows

Как установить Go на Windows

Golang можно легко установить на Windows. Ниже приведено подробное пошаговое руководство по установке Golang на Windows.

Разница между обычным телевизором и Smart TV

Разница между обычным телевизором и Smart TV

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

Почему в морозильной камере нет подсветки, а в холодильнике есть?

Почему в морозильной камере нет подсветки, а в холодильнике есть?

Холодильники — привычные бытовые приборы. Холодильники обычно имеют 2 отделения: холодильное отделение просторное и имеет подсветку, которая автоматически включается каждый раз, когда пользователь ее открывает, а морозильное отделение узкое и не имеет подсветки.

2 способа устранения перегрузки сети, которая замедляет Wi-Fi

2 способа устранения перегрузки сети, которая замедляет Wi-Fi

На сети Wi-Fi влияют многие факторы, помимо маршрутизаторов, пропускной способности и помех, но есть несколько разумных способов улучшить работу вашей сети.

Как перейти с iOS 17 на iOS 16 без потери данных с помощью Tenorshare Reiboot

Как перейти с iOS 17 на iOS 16 без потери данных с помощью Tenorshare Reiboot

Если вы хотите вернуться к стабильной версии iOS 16 на своем телефоне, вот базовое руководство по удалению iOS 17 и понижению версии с iOS 17 до 16.

Что происходит с организмом, если вы едите йогурт каждый день?

Что происходит с организмом, если вы едите йогурт каждый день?

Йогурт — замечательная еда. Полезно ли есть йогурт каждый день? Как изменится ваше тело, если вы будете есть йогурт каждый день? Давайте узнаем вместе!

Какой вид риса лучше всего подходит для здоровья?

Какой вид риса лучше всего подходит для здоровья?

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

Как просыпаться вовремя утром

Как просыпаться вовремя утром

Установление режима сна и отхода ко сну, смена будильника и корректировка рациона питания — вот некоторые из мер, которые помогут вам лучше спать и вовремя просыпаться по утрам.

Советы по игре Rent Please! Симулятор арендодателя для новичков

Советы по игре Rent Please! Симулятор арендодателя для новичков

Арендуйте, пожалуйста! Landlord Sim — мобильная игра-симулятор для iOS и Android. Вы будете играть за владельца жилого комплекса и начнете сдавать квартиры в аренду, чтобы улучшить интерьер своих апартаментов и подготовить их к приему арендаторов.

Последние коды защиты башни в ванной и как вводить коды

Последние коды защиты башни в ванной и как вводить коды

Получите игровой код Bathroom Tower Defense Roblox и обменяйте его на потрясающие награды. Они помогут вам улучшить или разблокировать башни с более высоким уроном.

Конструкция, обозначения и принципы работы трансформаторов

Конструкция, обозначения и принципы работы трансформаторов

Давайте максимально подробно изучим конструкцию, обозначения и принципы работы трансформаторов.

4 способа, которыми ИИ делает умные телевизоры лучше

4 способа, которыми ИИ делает умные телевизоры лучше

От лучшего качества изображения и звука до голосового управления и многого другого — эти функции на базе искусственного интеллекта делают смарт-телевизоры намного лучше!

Почему ChatGPT лучше DeepSeek

Почему ChatGPT лучше DeepSeek

Поначалу люди возлагали большие надежды на DeepSeek. Как ИИ-чат-бот, позиционируемый как серьезный конкурент ChatGPT, он обещает интеллектуальные возможности и возможности чата.

Встречайте Fireflies.ai: бесплатный секретарь на базе искусственного интеллекта, который сэкономит вам часы работы

Встречайте Fireflies.ai: бесплатный секретарь на базе искусственного интеллекта, который сэкономит вам часы работы

Легко упустить важные детали, записывая другие важные вещи, а попытки делать заметки во время общения могут отвлекать. Решение — Fireflies.ai.

Как вырастить Аксолотля Майнкрафт, приручить Саламандру Майнкрафт

Как вырастить Аксолотля Майнкрафт, приручить Саламандру Майнкрафт

Аксолот в Minecraft станет отличным помощником для игроков при действиях под водой, если они знают, как им пользоваться.

A Quiet Place: The Road Ahead Конфигурация игры для ПК

A Quiet Place: The Road Ahead Конфигурация игры для ПК

Конфигурация A Quiet Place: The Road Ahead имеет довольно высокий рейтинг, поэтому вам нужно будет рассмотреть ее перед принятием решения о загрузке.