Go语言学习教程(二)

一、为什么使用开发工具

* 在企业开发中不使用记事本进行开发,而使用开发工具,因为开发工具可以提升开发效率。

* 不同公司的开发工具可能不同,但是每个工具选择开发工具时都满足以下几点

* 提升开发效率

* 功能强大

* 软件使用不是特别复杂

* 适合公司项目

二、Goland简介

* Goland由JetBrains公司推出的专门针对Go语言的开发工具,使用Goland时有如下优点:

* 代码提示

* 快速编译

* 一键构建

*Goland的下载地址:http://www.jetbrains.com/go/

三、Goland简单使用

1、新建项目

2、选择项目的路径,注意路径不要包含中文

3、新建Go文件,右键”Study”–>”New”–>”Go File”

4、在弹出框中输入文件名, 选择Kind为”Simple Application”可以生成包名和主函数

5、编写代码后,在空白位置右键,选择”Run ‘go build main.go'”

6、弹出控制台,观察结果

四、Goland常用配置

* 主题设置(Darcula)

* 菜单”File”–>”Settings”–>Appearance & Behavior –>右侧Theme修改主题

* 字体大小设置(24)

* 菜单”File”–>”Settings”–>Editor –> Font –>右侧Size输入字体大小

* 快捷键设置(Eclipse)

* 菜单”File”–>”Settings”–>右侧选择自己熟悉软件的快捷键

五、打印输出

* 在程序中输出使用频率很高,使用输出语句可以在程序执行过程中把一些结果输出到控制台中,程序员通过控制台中输出结果判断是否符合预期

* 在Go语言中有多种输出方式,不同的输出适用场景不同.归纳起来三种,每种还分为3种方式(原内容,原内容+ln,原内容+f)

* PrintXX()

* FprintXX()

* SprintXX()

* FprintXX在Go Web中使用比较多,把内容写到响应流中

* Fprintln()输出后会添加换行符,所以长度比内容多1个

*代码示例:os.Stdout 表示控制台输出流

func main() {

fmt.Fprint(os.Stdout, “内容1”)//向流中写入内容,多个内容之间没有空格

fmt.Fprintln(os.Stdout, “内容2”)//向流中写入内容后额外写入换行符,多个内容之间空格分割

fmt.Fprintf(os.Stdout, “%s”, “内容3”)//根据verb格式向流中写入内容

}

* Println()底层实际是Fprintln(),返回值依然是内容长度和错误信息

*Sprintln和Println()主要的区别是:

* Sprintln()把形成结果以字符串返回,并没有打印到控制台

* Println()把结果打印到控制台,返回内容长度和错误

* 所以从严格意义角度讲SprintXX不是打印输出,而更像字符串转换

六、转义字符

* 在Go语言中可以使用%+特定字母或/+特定字母形成转义字符,这个表示特定含义的组合称为转义字符.

* 在Go语言中又称为verb

* 转义字符在Go语言中在以下两种情况使用频率较高

* 以下为常用转义字符

verb

含义

%d

十进制整数

%x,%X

大小写方式显示十六进制整数

%o

八进制整数

%b

二进制整数

%f,%g,%e

浮点数

%t

布尔值

%c

字符

%s

字符串

%q

带双引号字符串

%v

内置格式内容

%T

类型

%p

内存地址

%%

字符%

换行

缩进

七、用户输入

* 用户输入在平时练习中使用频率较高.

* 程序运行时,运行到接收用户输入语句,程序阻塞,用户在控制台输入内容后,把内容赋值给对应的变量,程序继续运行.

* 在Go语言中有多种接收用户输入的方式,其中使用fmt包的Scan函数使用最简单

* 使用Scanln(&变量名,&变量名)的方式接收.

* 输入的内容必须都在同一行

* 每个内容之间使用空格分割

* 回车换行后表示停止输入.

* 如果希望接收3个值,而在控制台只输入2个值,回车后也停止接收

* 如果希望接收2个值,而在控制台输入3个,回车后只能接收两个值

* 也可以使用fmt.Scanf(verb,&变量)按照特定的格式进行输入

* 需要注意,如果同行输入两个字符串,中间必须使用空格隔开,否则编译器无法对输入内容拆分

八、变量声明和赋值

8.1 静态语言和动态语言

* 静态类型语言和强类型语言是同一个意思,表示在编译期就确定了类型,而且类型是不可以改变的

* 动态类型语言和弱类型语言是同一个意思,表示在运行过程中才能确定,且内容是什么类型变量类型跟随变化

8.2 Go语言变量简介

* Go语言和其他语言一样都有基本存储容器.可以存储一个或多个值在程序中,方便程序中多次使用容器中内容,这个容器称为:变量

* Go语言虽然是静态类型语言,但是支持动态类型语言语法,因为Go语言希望程序员少声明变量,增加GC效率

8.3 变量命名规则

* 以字母或下划线开头(Go语言中多不以_开头)

* 后面可以是任意数量的字符、数字和下划线

* 区分大小写

* 不能是关键字(关键字具备特定含义)

* 可以是保留字,但是建议不使用保留字做为变量名,

* 在同一范围内不允许出现同名变量

* Go语言要求变量声明后至少使用一次(赋值不属于使用)

8.4 变量声明及赋值

* 先声明后赋值(声明后开辟内存,不同类型变量都有不同初值)

//1. 声明

var 变量名 类型

//2. 赋值

变量名=值

//示例:

var smallming string

smallming = “英文名”

* 声明并赋值(此方式不建议)

//语法:

var 变量名 类型 = 值

//示例

var smallming string = “英文名”

* 声明并赋值(省略类型,变量类型取决于值的类型)

//语法:

var 变量名 = 值

//示例:

var smallming = “英文名”

* 短变量(只能在函数内使用)

//语法:

变量名 := 值

//示例:

smallming := “英文名”

8.5 声明多个变量和赋值

* 先声明后赋值

func main() {

var a, b, c int

a, b, c = 1, 2, 3

fmt.Println(a, b, c)

}

* 声明时赋值

func main() {

var a, b, c, d = 1, 2, 3, false

fmt.Println(a, b, c, d)

}

* 声明并赋值,推荐方式

func main() {

var (

a = 1

b = true

c = “测试”

)

fmt.Println(a, b, c)

}

* 使用短变量给多个变量赋值时,必须要保证至少有个变量是没有声明的

func main() {

var (

a = 1

b = true

c = “测试”

)

//短变量操作多个值时只要保证里面至少有一个新变量

b, c, d := false, “smallming”, 3

fmt.Println(a, b, c, d)

}

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
用户投稿
上一篇 2022年6月18日 12:06
下一篇 2022年6月18日 12:06

相关推荐

  • 短视频策划内容的3个要点(短视频策划内容怎么做)

    短视频在制作时,内容框架非常重要。如果直奔主题,然后结束,聚卓告诉你,这样的短视频已经过时了。现在的短视频需要框架的,但不是任何框架,它需要一种易于理解和消化的框架。而且,现在大多…

    2022年11月27日
  • 存储过程语法(sql server存储过程语法)

    今天小编给各位分享存储过程语法的知识,其中也会对sql server存储过程语法进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧! oracle存储过程基本语法…

    2022年11月26日
  • 小红书平台的一些机制及玩法详解(小红书玩法有哪些)

    关于小红书 一:小红书平台的一些机制 1. 笔记内容的CES评分机制 2. 笔记流量入口与长尾效应 二:小红书优质笔记的特点(分维度、类型分析) 1.笔记的本身架构组成 维度 2.…

    2022年11月25日
  • 博客营销的3大优势解析(博客营销怎么做)

    不知不觉已经写了24篇文章,加上这篇是第25篇了,都是自己这几年来用过的营销方法,如果遇到有些不懂的,我会咨询我的朋友和同事帮忙,尽量让每一篇有价值,哪怕是对大家有一点点帮助也行,…

    2022年11月25日
  • 什么是内容营销策略如何策划一套成功的内容营销策略

    很多时候,营销人员会在创作营销内容时感到沮丧,这也是很多企业至今没用好数字化营销工具的重要原因之一。 举个例子,您可能会花上数小时期待制作一些令人惊叹的东西,实际却是得到很少的受众…

    2022年11月25日
  • 直播带货详细脚本(直播文案策划怎么写)

    短视频运营策划方案怎么写?涉及哪几个方面? 我在网上看到好多千篇一律的文章,关于【短视频运营策划方案】这一块,基本都是在讲账号的内容本身。 你内容做得再好,却不掌握算法的规律,能有…

    2022年11月25日
  • 闲鱼上怎么卖东西快?闲鱼赚钱必知技巧(怎么在闲鱼里面卖东西)

    自从闲鱼这个平台出现以后,随着这些年的发展,闲鱼也成为了很多人开店赚钱的重要途径。一些新人也想在闲鱼上试试水,看看能不能赚到钱。如今闲鱼上既可以卖二手闲置物品,也可以卖一些新品,那…

    2022年11月25日
  • 淘宝直播平台抽成多少(淘宝直播平台抽成比例)

    随着时代的发展,现在直播带货已经成为主要带货方式,其中淘宝是主流带货平台,不少人在上面直播带货赚钱,一些小伙伴也想加入,那么淘宝直播平台抽成多少?下面小编为大家带来淘宝直播平台抽成…

    2022年11月24日
  • 淘宝直播带货技巧分享(淘宝直播复制粘贴技巧)

    淘宝是大家喜欢的购物平台,不少人会自己在淘宝选购,也会在主播直播间购买,价格更实惠,现在很多商家都会开通直播带货功能,增加订单量,那么淘宝直播带货有哪些?下面小编为大家带来淘宝直播…

    2022年11月24日
  • 白衬衫搭配什么裤子好看,女生衬衫穿法图片

    说起白衬衫和长裤的搭配组合,不知道大家有没有发现,虽然是很常见的造型,可不同年龄段惯用的穿搭方式却不相同,从而也穿出了不同的味道。简直是现在这个季节,时髦精们的必备造型之一~ 70…

    2022年11月24日

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息