golang语言学习第一课:如何定义变量,笔记及回顾「建议收藏」

golang语言学习第一课:如何定义变量,笔记及回顾「建议收藏」golang语言学习第一课:如何定义变量,笔记及回顾

大家好,又见面了,我是你们的朋友全栈君。

第一课主要讲go语言如何定义变量

需要注意的是:go语言定义了变量一定要使用,不使用会提示出错。这个机制比较好。

第一:完整变量定义法: var a int =3    注意:go语言跟其他语言定义变量不太一样,类型放后面,符合人们思维的习惯。

第二种:var省略类型法: var a =3

第三种:批量定义变量法:

var (

  a int =3

  b string=”hello”

       c  bool = true

)

省略类型版:

var (

  a =3

  b =”hello”

  c = true

)

第四种:自动推导类型法:只能在函数体内用自动推导的方式,在函数体外不能使用。

function variableshorter int  ( ) {       

  /*此处有点郁闷,函数返回类型也放后面定义,因为是从C和C#转过来的,老是不习惯*/

  a:=3

  b, c, d := 5, true, “string hello”

  b=110   /* 自动推导定义变量用冒号等号,其中冒号是定义变量的意思,第二次用变量的时候不能再用:=,只能用=赋值。*/

  return 0  //记得返回整形,

}

 

最后把练习的源代码全部放上来:

package main

import "fmt"
var aa =5       //包内部变量,不是全局变量
var ss ="hello5"  //用var定义变量可以省略类型
var bb bool = true  //在函数体外不能用bb:=true
/*
批量定义变量,可以放进一个括号里
var (
    aa=3
    ss="hello"
    bb=true
)

 */

func variableZeroValue (){
    var a int
    var s string
    fmt.Println(a,s)
    fmt.Printf("%d %s\n", a,s)
    fmt.Printf("%d %q\n",a,s) //需要多练习,格式化输出格式用“”双引号,里面多参数不能带逗号而是用空格

}

func variableInitialValue (){
    var a,b int =3,4
    var s string ="abc"
    fmt.Println(a,b,s)
}

func variableTypeDeduction(){
    var a,b,c,s =3,4,true,"abc" //注意 true是小写, True是错误的

    fmt.Println(a,b,c,s)
}

func variableShort(){
    a,b,c,s:=3,4,true,"abc" //:=中的冒号是定义变量,后面要用改变变量不能再用冒号等于,只能用=赋值符
    b=5  //改变变量的值,不能再用:=
    fmt.Println(a,b,c,s)
}

func main() {
    variableShort()
    fmt.Println(aa,bb,ss)
}

 

转载于:https://www.cnblogs.com/golangxiong/p/10066747.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107161.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ASP.NET 如何使用 SqlTransaction

    ASP.NET 如何使用 SqlTransactiontransaction属性: 1.原子性:事务是一个完整的操作,事务的各元素师不可分的。2.一致性:事务开始时和完成时,数据必须处于一致的状态。3.隔离性:对数据进行修改的所有并发事务是彼此隔离的。4.持久性:事务完成后,它对系统的影响是永久的。  ASP.NET使用SqlTransaction处理事务操作 SqlTransaction类是对SQLSe

    2022年5月1日
    35
  • EJB学习心得

    EJB学习心得注意:在EJB中对Bean的定位是通过JNDI的名称来确定的一:当EJB发布到JBOSS时,如果我们没有为它指定全局JNDI名称或修改其默认的EJB名称, JBOSS就会按照默认的命名规则为EJB生成全局JNDI名称。默认的命名规则如下: 如果把EJB作为模块打包进后缀*.ear的JAVAEE企业应用文件,默认的全局JNDI名称是  本地接口:EAR-FILE-BASE-NAME/EJB-C…

    2022年9月29日
    4
  • 线上FGC调优案例三则

    线上FGC调优案例三则前言闲鱼服务端应用广泛使用Java技术栈,基于JVM提供的托管式堆内存管理,开发者无需过多关心对象创建/回收时的内存分配/释放动作,垃圾回收器(GarbageCollector)会在…

    2022年6月19日
    34
  • mysql登录出现1045错误修改方法[通俗易懂]

    mysql登录出现1045错误修改方法[通俗易懂]在cmd中输入mysql-uroot-p出现1045错误如下:ERROR1045(28000):Accessdeniedforuser’root’@’localhost'(usingpassword)解决方法:1.先找到mysqlbin目录下的my.ini文件,在[mysql]下面加上skip-grant-tables用于跳过密码2.重启服务器net

    2022年6月11日
    52
  • visual c++2010密钥

    visual c++2010密钥6VPJ7-H3CXH-HBTPT-X4T74-3YVY7

    2022年5月18日
    36
  • Appium依据xpath获取控件实例随笔「建议收藏」

    Appium依据xpath获取控件实例随笔

    2022年1月31日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号