一、Go的前景与优势、基础语法

Go简介

Go的公司、场景应用

公司占比:

字节跳动领先,公司内部有上万个微服务使用go来编写,不久前也开源了GO RPC框架KiteX。
同时,腾讯、百度、美团、滴滴、深信服、平安、OPPO、知乎、去哪儿、360、金山、微博、哩哔哩、七牛、PingCAP、Google Facebook等公司也在大量使用Go语言。

业务维度:

在云计算、微服务、大数据、区块链、物联网等领域蓬勃发展。然后在云计算、微服务等领域已经有非常高的市场占有率。Docker、Kubernetes等,几乎所有的云原生组件全是用Go实现的。


Go的优势

C++不太适合在线Web业务。python随着业务体量的增长,容易遇到一些性能问题。
而Go入门简单,开发效率高,性能较好,开发和部署简单,可以解决python的依赖库版本问题。随着公司内部的基于golang的rpc和http框架的诞生与推广,越来越多的python服务使用golang重写,至今为止,golang已经成为内部使用率最高的编程语言。

基础语法

helloworld

package main  //package main代表这个文件属于main包的部分,main包也就是程序的入口包import ("fmt"  //导入了标准库里面的FMT包。这个包主要是用来往屏幕输入输出字符串、格式化字符串的。
)func main() {  fmt.Println("hello world")  
}

输入与输出

`fmt.Print`:不添加换行符并打印。

`fmt.Println`:添加换行符并打印。

`fmt.Printf`:使用占位符来指定输出格式并打印。

`fmt.Scan`:读取一个值

`fmt.Scanln`:读取一行文本,并尝试将其解析为参数列表中变量的值。

变量


变量的声明

package main  import (  
"fmt"  
)  func main() {  // 变量的声明方式一:明确变量类型  
var A int  // 变量的声明方式二: 编辑器自己判断变量类型
var B // 变量的声明方式三:省略var 用:= 值
C := "Hello World"

常量


将变量声明方式的一和二中的var改为const即为常量的声明(方式三在常量中没有)

字符串


可用+号直接拼接

if else

go的if else写法和C或C++类似。但go的if后面没有括号。如果你写括号的话,那么保存时编辑器会自动去掉。且Go里面的if后面必须接大括号,不能直接把if里面的语句写在if的同一行。

if 条件表达式 {//逻辑代码
}
else if 条件表达式 {//逻辑代码
}
else{//逻辑代码
}

for循环

//go中只有for循环package mainimport "fmt"func main() {i := 1for {                         //无条件循环,如果没有break就是死循环fmt.Println("loop")break}for j := 7; j < 9; j++ {      //计数器循环fmt.Println(j)}for n := 0; n < 5; n++ { if n%2 == 0 {continue            //go中也有continue}fmt.Println(n)}for i <= 3 {                  //纯条件循环fmt.Println(i)i = i + 1}
}


 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/34549.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MOCK测试

介绍 mock&#xff1a;就是对于一些难以构造的对象&#xff0c;使用虚拟的技术来实现测试的过程。 mock测试&#xff1a;在测试过程中&#xff0c;对于某些不容易构造或者不容易获取的对象&#xff0c;可以用一个虚拟的对象来代替的测试方 法。 接口Mock测试&#xff1a;在接口…

Microsoft365家庭版1年订阅新功能及版本对比

Microsoft 365可帮助您工作、学习、组织、连接和创&#xff0c;只需一项方便的订阅&#xff0c;即可尽享具有 Microsft 365 的6款精品应用、可同时登录5 台设备&#xff08;包括 Windows、macOS、iOS 和 Android 设备&#xff09;、高级安全性等&#xff0c;并且可以自由管理授…

中间件多版本冲突的4种解决方案和我们的选择

背景 在小小的公司里面&#xff0c;挖呀挖呀挖。最近又挖到坑里去了。一个稳定运行多年的应用&#xff0c;需要在里面支持多个版本的中间件客户端&#xff1b;而多个版本的客户端在一个应用里运行时会有同名类冲突的矛盾。在经过询问chatGPT&#xff0c;百度&#xff0c;googl…

c语言--浮点数(float)与0值比较

我们定义一个float类型的数据a&#xff0c;赋值为123456789并输出&#xff1a; int main() {float a;a 123456789;printf("%f\n",a);return 0; }输出结果为&#xff1a; 由此可以看出&#xff0c;程序输出的结果并不是其被赋予的值。即说明了浮点数存在一定的误差。…

CentOS 7查看磁盘空间

CentOS如何查看硬盘大小 CentOS是一种基于Linux的操作系统&#xff0c;主要用于服务器端应用。在服务器管理中&#xff0c;硬盘大小是一个非常重要的指标&#xff0c;查看硬盘大小可以帮助系统管理员有效地管理硬盘空间和避免硬盘满了的情况。 方法一&#xff1a;使用df命令 …

【Express.js】express-validator

express-validator express.js 集成 express-validator进行数据校验 在最初的时候&#xff0c;对于请求的数据校验&#xff0c;我们是自定义一个中间件&#xff0c;然后在里面通过最原生的方式检验。在本节&#xff0c;我们将尝试用一种更优雅的方式进行数据校验。 准备工作…

明月之刃:armbian巧借nmtui管理网络连接

文章目录 nmtui简介安装nmtuinmtui使用连接wifi设置主机名称 nmtui简介 nmtui是NetworkManager TUI&#xff08;Text User Interface&#xff09;的缩写&#xff0c;它提供了一个可视化的界面来管理网络连接。但是&#xff0c;在Debian系统中&#xff0c;没有默认安装nmtui工具…

各地区-各行业法人单位、区划数63个指标(2010-2022年)

一、数据介绍 数据名称&#xff1a;各地区-各行业法人单位、区划数63个指标 数据年份&#xff1a;2010-2022年&#xff08;法人单位至2021年&#xff09; 数据样本&#xff1a;404条 数据来源&#xff1a;自我整理 二、指标说明 行政区划代码 地区 长江经济带 经度 纬…

Maven项目防止配置文件读取不到

1. 配置方法 我们使用IDEA创建一个基本的Maven项目时&#xff0c;默认情况下是从src/main/resources中读取xml或properties配置文件的。但是我们有时会把一些xml或properties配置文件放在代码目录下&#xff08;即src/main/java下&#xff09;。因此我们在pom.xml中进行如下配…

Python(八十三)字符串的比较操作

❤️ 专栏简介&#xff1a;本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中&#xff0c;我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。 ☀️ 专栏适用人群 &#xff1a;本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无…

pgsql checkpoint机制(1)

检查点触发时机 检查点间隔时间由checkpoint_timeout设置pg_xlog中wall段文件总大小超过参数max_WAL_size的值postgresql服务器在smart或fast模式下关闭手动checkpoint 为什么需要检查点&#xff1f; 定期保持修改过的数据块作为实例恢复时起始位置&#xff08;问题&#xf…

WebAPIs 第一天

1.声明变量const优先&#xff08;补充&#xff09; 2.WebAPI基本认知 作用和分类 DOM树和DOM对象 3.获取DOM元素 4.DOM修改元素内容 5.操作元素属性 6.定时器-间歇函数 一.声明变量const优先 ① 变量声明有var let const ② 建议const优先&#xff0c;尽量使用const…

java的内存模型

Java内存基础 并发编程模型的两个关键问题 线程之间如何通信及线程之间如何同步 线程之间的通信机制有两种&#xff1a;共享内存和消息传递。 在共享内存的并发模型里&#xff0c;线程之间共享程序的公共状态&#xff0c;通过写-读内存中的公共状态 进行隐式通信。在消息传…

财务管理系统javaweb会计账房进销存jsp源代码mysql

本项目为前几天收费帮学妹做的一个项目&#xff0c;Java EE JSP项目&#xff0c;在工作环境中基本使用不到&#xff0c;但是很多学校把这个当作编程入门的项目来做&#xff0c;故分享出本项目供初学者参考。 一、项目描述 财务管理系统javaweb java,Struts2,bootstrap,mysql,…

jzoj 1028: 【入门】最小公倍数

1028: 【入门】最小公倍数 时间限制: 1.000 Sec 内存限制: 16 MB 提交: 19748 解决: 13503 题目描述 求两个整数M和N的最小公倍数。 输入 输入一行&#xff0c;包括两个整数. 输出 输出只有一行&#xff08;这意味着末尾有一个回车符号&#xff09;&#xff0c;包括1个…

删除块参照 删除块定义

删除块参照 void CDwgDatabaseUtil::DeleteBlockReference(CString strBlockName) {// 锁定文档acDocManager->lockDocument(acDocManager->curDocument());AcDbObjectId objRecId;if (

Vue中实现图片懒加载简单说明

1.安装 npm i vue-lazyload1.2.6 2.导入 import VueLazyload from "vue-lazyload"; 3.注册插件 说明&#xff1a;main.js文件 import imgs_src from "src" Vue.use(VueLazyload, {// 懒加载默认图片loading:"imgs_src" }); 4.前台 说明:vue文…

关于Transformer的理解

关于Transformer&#xff0c; QKV的意义表示其更像是一个可学习的查询系统&#xff0c;或许以前搜索引擎的算法就与此有关或者某个分支的搜索算法与此类似。 Can anyone help me to understand this image? - #2 by J_Johnson - nlp - PyTorch Forums Embeddings - these ar…

leetcode202. 快乐数

题目&#xff1a;leetcode202. 快乐数 描述&#xff1a; 编写一个算法来判断一个数 n 是不是快乐数。 「快乐数」 定义为&#xff1a; 对于一个正整数&#xff0c;每一次将该数替换为它每个位置上的数字的平方和。 然后重复这个过程直到这个数变为 1&#xff0c;也可能是 无…

两只小企鹅(Python实现)

目录 1 和她浪漫的昨天 2 未来的旖旎风景 3 Python完整代码 1 和她浪漫的昨天 是的,春天需要你。经常会有一颗星等着你抬头去看&#xff1b; 和她一起吹晚风吗﹖在春天的柏油路夏日的桥头秋季的公园寒冬的阳台&#xff1b; 这世界不停开花&#xff0c;我想放进你心里一朵&am…