当前位置: 首页 > news >正文

golang学习笔记3-变量的声明

注:本人已有C,C++,Python基础,只写本人认为的重点。
一、变量的三种声明方式

func main() {//方式1,指定数据类型,声明后若不赋值,使用默认值//比如int的默认值是0,string的默认值是空串var i int = 1//方式2,类型推导,根据值自行判定变量类型var num = 10.11//方式3,省略var的类型推导//下面的方式与var name string;name = "tom"等价name := "tom"
}

特别注意:go变量声明后,若再次赋值,不算使用!会报错!只有该变量放在等号右边或用于函数调用才算使用。变量在等号右边的情况有两种:一是赋值自己,比如自增,二是赋值给其他变量。

二、多变量的声明

func main() {//方式1,指定数据类型,从左到右依次赋值,下同var n1, n2, n3 int = 1, 2, 3//方式2,类型推导var n1, name , n3 = 100, "tom", 888//方式3,省略var的类型推导n1, name , n3 := 100, "tom~", 888
}

曾经有道面试题,给定两个变量,要求不使用中间变量的情况下交换它们。有种方法是a=a+b;b=a-b;a=a-b;其实不用这么麻烦,只需一句就行了,这也是python的语法:a,b=b,a。

三、全局变量的声明

package mainimport "fmt"//定义全局变量
var n = 100
var name = "jack"//上面的声明方式,也可以改成一次性声明
var (n2    = 300name2 = "mary"
)func main() {
}

http://www.mrgr.cn/news/33798.html

相关文章:

  • CORS跨域+Nginx配置、Apache配置
  • 2024.9.22
  • screen使用——关机时在服务器上跑代码
  • 蓝桥杯嵌入式的学习总结
  • UE学习篇ContentExample解读-----------Blueprint_Overview
  • 《深度学习》—— 卷积神经网络(CNN)的简单介绍和工作原理
  • 深度学习与应用:人体关键点检测
  • SpringBoot项目License证书生成与验证(TrueLicense) 【记录】
  • 一种求解无人机三维路径规划的高维多目标优化算法,MATLAB代码
  • Java-Part 0
  • 2009考研数学真题解析-数二:
  • 【JavaWeb】一、Web 开发概述
  • 将相机深度图转接为点云的ROS2功能包
  • Java基础 — 正则表达式+函数式编程
  • 将任意图像增强模型与ultralytics中任意模型进行结合,支持自定义图像增强模块的loss,实现端到端训练
  • Tomcat中间件常见漏洞复现
  • #面试系列-腾讯后端一面
  • 思维商业篇(4)—产业上下游定
  • AJAX入门
  • 2024PDF内容修改秘籍:工具推荐与技巧分享