go变量、打印、注释

Go 语言定义变量

变量:程序运行过程中的数据都是保存在内存中,我们想要在代码中操作某个数据时就需要去内存上找到这个变量,但是如果我们直接在代码中通过内存地址去操作变量的话,代码的可读性会非常差而且还容易出错,所以我们就利用变量将这个数据的内存地址保存起来,以后直接通过这个变量就能找到内存上对应的数据了。

下面仅仅是简单的介绍一下变量,后续还会详细讲解。

定义变量

  1. var定义变量
go 复制代码
var 变量名 类型 = 表达式

比如:

go 复制代码
var name string = "Jack"
  1. 类型推导方式定义变量

在函数内部,可以使用更简略的 := 方式声明并初始化变量。

注意:短变量只能用于声明局部变量,不能用于全局变量的声明

go 复制代码
变量名 := 表达式

比如:

go 复制代码
n := 10

fmt 包、Print、Println、Printf

Go 中要打印一个值需要引入 fmt 包

go 复制代码
import "fmt"

fmt 包里面给我们提供了一些常见的打印数据的方法,比如:Print 、Println、Printf,在我们实际开发中 Println、Printf 用的非常多。

  1. Print 和 Println 区别:
  • 一次输入多个值的时候 Println 中间有空格 Print 没有:
go 复制代码
package main

import "fmt"

func main() {
	fmt.Println("go", "python", "php", "javascript")
	fmt.Print("go", "python", "php", "javascript")
}

结果:

text 复制代码
go python php javascript
gopythonphpjavascript
  • Println 会自动换行,Print 不会:
go 复制代码
package main

import "fmt"

func main() {
	fmt.Println("hello")
	fmt.Println("world")
	fmt.Print("hello")
	fmt.Print("world")
}

结果:

text 复制代码
hello
world
helloworld
  1. Println 和 Printf 区别:

Printf 是格式化输出,在很多场景下比 Println 更方便,举个例子:

go 复制代码
package main

import "fmt"

func main() {
	a := 10
	b := 20
	c := 30
	fmt.Println("a=", a, ",b=", b, ",c=", c)
	fmt.Printf("a=%d,b=%d,c=%d", a, b, c)
}

结果:

text 复制代码
a= 10 ,b= 20 ,c= 30
a=10,b=20,c=30

%d 是占位符,表示数字的十进制表示。Printf 中的占位符与后面的数字变量一一对应。

更多的占位符参考:https://studygolang.com/articles/2644 或者参考官网

注释

  1. 单行注释

用//可以作为单行注释,编译器会忽略//开头的这一行文本

go 复制代码
// This is a comment
package main
import ("fmt")

func main() {
  // This is a comment
  fmt.Println("Hello World!")
}

也可以在代码末尾,用//进行注释

go 复制代码
package main
import ("fmt")

func main() {
  fmt.Println("Hello World!") // This is a comment
}
  1. 多行注释

多行注释以 开头/,以 结尾/。

/和之间的任何文本/将被编译器忽略:

go 复制代码
package main
import ("fmt")

func main() {
  /* The code below will print Hello World
  to the screen, and it is amazing */
  fmt.Println("Hello World!")
}

总结

本篇博客简单了了解了go语言如何定义一个变量,以及打印相关内容,包括单行注释和多行注释,变量相关内容下一篇博客会进一步详解。

参考文档

https://www.w3schools.com/go/go_comments.php

相关推荐
我的golang之路果然有问题4 小时前
快速了解GO+ElasticSearch
开发语言·经验分享·笔记·后端·elasticsearch·golang
在成都搬砖的鸭鸭5 小时前
【Golang】使用gin框架导出excel和csv文件
golang·excel·gin
Lu Yao_5 小时前
golang -- slice 底层逻辑
golang
希望20175 小时前
go语言基础|slice入门
后端·golang
walkskyer5 小时前
使用 Golang `testing/quick` 包进行高效随机测试的实战指南
开发语言·后端·golang
Cxzzzzzzzzzz13 小时前
go语言的GMP(基础)
开发语言·性能优化·golang
linweidong1 天前
Go开发简历优化指南
分布式·后端·golang·高并发·简历优化·go面试·后端面经
白总Server1 天前
C++语法架构解说
java·网络·c++·网络协议·架构·golang·scala
why1511 天前
字节golang后端二面
开发语言·后端·golang