当前位置:网站首页>[Yugong series] go teaching course 005 variables in July 2022
[Yugong series] go teaching course 005 variables in July 2022
2022-07-07 11:23:00 【Hua Weiyun】
One 、 Variable
1. Definition of variables
Variables come from mathematics , Used to describe the data storage space in a computer . Variable can be accessed by variable name . In imperative language , Variables are usually variable ; But in pure functional languages ( Such as Haskell) in , Variables can be immutable (immutable) Of . In some languages , Variables may be explicitly defined to represent variable states 、 An abstraction with storage space ( If in Java and Visual Basic in ); But other languages may use other concepts ( Such as C The object of ) To refer to this abstraction , Without strictly defining “ Variable ” Accurate extension of .
2. Role of variables
The function of variables is to mark and store data in memory .
Memory , Full name memory . It is used to store the data during the operation of the computer .
In order to better store data , The memory is divided into different storage units as follows :
Take a storage unit out of memory , Store the corresponding data :
For example, the above red area , Variable name = The name of the area , Data exists in the region
3. Variable declaration and initialization
3.1 Declaration of variables
Go It's a static language , All variables must be declared before use . The meaning of the declaration is to tell the compiler the boundary information of the memory that the variable can operate on , This boundary is usually provided by the type information of variables . stay Go In language , There is a general variable declaration method like this :
Use of variables
fmt.Println(a)3.2 Initialization of a variable
You can assign values when defining variables , This process is called variable initialization
var age int=10
3.3 The assignment of a variable
You can assign values to variables after they are defined , Declare before assign .
var age,num int age=10num=20fmt.Println(age,num) //10,20Assign a variable to another variable as follows :
var age int =10var num intnum=agefmt.Println(num) //10Be careful : Assigning a value to a variable will overwrite the old value
3.4 Case study : Exchange the values of two variables
Temporary variable
package mainimport "fmt"func main(){ a := 1 b := 5 var t int t = a a = b b = t fmt.Println("a = ", a, "b = ", b )}Do not use temporary variables
package mainimport "fmt"func main(){ a := 1 b := 5 a = a + b b = a - b a = a - b fmt.Println("a = ", a, "b = ", b )}Direct assignment
package mainimport "fmt"func main() { a := []int{1, 2} b := []int{3, 4, 5} a, b = b, a fmt.Println(`a:`, a) fmt.Println(`b:`, b)}summary
- Variable declarations :var Variable name variable type
- Declare multiple variables :var Variable name 1, Variable name … type
- Declare an integer variable , The default value is 0
- Output statements can use only one Println function , The middle part is separated by English half width commas !
- You can set the value of a variable , Assign to another variable , And the old value in the variable is overwritten by the new value .
边栏推荐
- 【时间格式工具函数的封装】
- RationalDMIS2022阵列工件测量
- When initializing 'float', what is the difference between converting to 'float' and adding 'f' as a suffix?
- 【问道】编译原理
- 使用引用
- 在我有限的软件测试经历里,一段专职的自动化测试经验总结
- Process control (creation, termination, waiting, program replacement)
- Vuthink proper installation process
- From pornographic live broadcast to live broadcast E-commerce
- electron 添加 SQLite 数据库
猜你喜欢

Debezium同步之Debezium架构详解

聊聊SOC启动(七) uboot启动流程三

关于在云服务器上(这里用腾讯云)安装mysql8.0并使本地可以远程连接的方法

聊聊SOC启动(十一) 内核初始化
![Verilog design responder [with source code]](/img/91/6359a2f3fa0045b4a88956a475488c.png)
Verilog design responder [with source code]

Shardingsphere sub database and table examples (logical table, real table, binding table, broadcast table, single table)

What is cloud computing?

Design intelligent weighing system based on Huawei cloud IOT (STM32)

【C#】WinForm运行缩放(变糊)的解决方法

分布式数据库主从配置(MySQL)
随机推荐
V-for img SRC rendering fails
STM32入门开发 编写DS18B20温度传感器驱动(读取环境温度、支持级联)
When initializing 'float', what is the difference between converting to 'float' and adding 'f' as a suffix?
基于Retrofit框架的金山API翻译功能案例
Shardingsphere sub database and table examples (logical table, real table, binding table, broadcast table, single table)
The sixth training assignment
Creative information was surveyed by 2 institutions: greatdb database has been deployed in 9 places
Distributed database master-slave configuration (MySQL)
科普达人丨一文弄懂什么是云计算?
VIM命令模式与输入模式切换
通过 Play Integrity API 的 nonce 字段提高应用安全性
聊聊SOC启动(十) 内核启动先导知识
2021-04-08
什么是高内聚、低耦合?
uniapp 在onLaunch中跳轉頁面後,點擊事件失效解决方法
The fifth training assignment
QT document
The database synchronization tool dbsync adds support for mongodb and es
[untitled]
Transaction rolled back because it has been marked as rollback only