Go 语言基础

1. 理解语句和标记

        Go程序由一系列语句组成,而Go语句由一系列标记组成。这里,标记指的是语句中任何有意义的对象,包括如下。

  • 关键字:用于特殊 Go 功能的保留字。
  • 操作符和标点符号:用于数学运算或执行特殊操作的符号。
  • 标识符:用于标识诸如存储位置或执行操作的函数等事物的标记。
  • 字面值:特定的值或数字,如 123 或 “Hello,world" 。

下面来看一个例子:

package mainimport "fmt"func main(){fmt.Println("Hello,world!")
}

  package main

 这条语句包含两个标记:package 和 main。package 标记是Go 中的关键字。main 标记是包的标识符。

fmt.Println("Hello,world!")

该语句包含以下标记:

  • fmt:这是一个标识符,告诉 Go 使用什么库
  • .:点表示层次结构的标记,这让 Go 知道Println是fmt的一部分
  • Println:这是一个引用函数的关键字
  • (...):括号是操作符,将程序要打印的字面值括起来。
  • "...":引号是将文本字符串括起来的操作符
  • Hello,world!:这是Println函数要显示的字面值

 Go 需要通过这些标记才能理解整个语句并知道如何解释它。

2. 语句

程序由一系列语句组成。在 Go 中,语句必须以分号或以下标记之一结尾。

  • 标识符
  • 整数、浮点数、虚数、符文或字符串字面值
  • 关键字break、continue、falthrough 或 return 中的一个
  • 操作符或标点符号,如++、--、)、] 或 }

        有些语句会有额外的规则来取代这里给出的规则。例如,声明变量时,var语句必须包含该变量的数据类型,以表明可以存储什么类型的值。

        让我们通过示例来具体了解语句是如何呈现的。 

package mainimport "fmt"func main() {var x intx = 10fmt.Println(x)
}

 根据语句的结束规则,可以将第4行改为如下

var x

        这里, x 是一个标识行,每行可以将标识符作为结尾。然而,当尝试运行这

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

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

相关文章

热线系统自主可控改造:构建安全、高效的服务新纪元

一、引言:热线系统的重要性与挑战 在信息化时代,热线系统作为企业与客户沟通的关键渠道,承载着重要的信息传递和服务功能。然而,随着技术的不断进步和网络安全威胁的日益严峻,传统的热线系统面临着诸多挑战。这些挑战…

性能工具之 JMeter 常用组件介绍(三)

文章目录 一、常用组件介绍二、Sampler:取样器三、Controller:控制器(逻辑控制器)四、Pre Processor:预处理五、Post Processor:请求之后的处理六、Assertions:断言七、Timer:定时器八、Test Fragment:片段九、Config Element:配置…

STM32 SPI驱动读取LSM6DSRTR

提示:通过SPI驱动读取传感器数据 文章目录 前言一、LSM6DSRTR二、配置步骤1.配置SPI2.引入 LSM驱动库3.结果 总结 前言 制作一个倾角传感器,通过SPI读取LSM6DSRTR的加速度数据转换为角度,不用IIC的原因是考虑IIC通讯的协议过于繁琐&#xff…

springCloudAlibaba之服务熔断组件---sentinel

sentinel组件学习 sentinel学习sentinel容错机制使用代码方式进行QPS流控-流控规则初体验使用SentinelResource注解进行流控使用注解方式 sentinel学习 服务雪崩 服务雪崩效应:因服务提供者的不可用导致服务调用者的不可用,并将不可用逐渐放大的过程。 …

心链10----查询修改加入队伍业务实现

心链 — 伙伴匹配系统 接口设计 查询队伍列表 :::success 分页展示队伍列表,根据名称、最大人数等搜索队伍 P0,信息流中不展示已过期的队伍 从请求参数中取出队伍名称等查询条件,如果存在则作为查询条件不展示已过期的队伍(根…

docker实战命令大全

文章目录 1 环境准备1.1 移除旧版本Docker1.2安装工具包1.3配置docker yum源 2 安装最新docker2.1 设置开机自启docker2.2配置加速器 3 实操-镜像3.1搜索镜像3.2下载镜像3.3查看镜像3.4 删除镜像 4 实操-容器4.1运行nginx容器4.2 查看容器4.3启动容器4.5关闭容器4.6查看容器日志…

功能强大的开源数据中台系统 DataCap 2024.03.5 发布

推荐一套基于 SpringBoot 开发的简单、易用的开源权限管理平台,建议下载使用: https://github.com/devlive-community/authx 推荐一套为 Java 开发人员提供方便易用的 SDK 来与目前提供服务的的 Open AI 进行交互组件:https://github.com/devlive-commun…

2个不同node版本的前端项目,用到的一个node版本管理工具nvm,可一键切换node版本

背景: 对于需要在电脑运行2个不同的前端项目,但是使用的node版本不同,为了快捷切换和管理node版本,所以需要用到一个非常方便的工具,那就是下边的nvm,一个命令就可以非常方便的切换你想要的node。 1、下载…

分布式光纤测温DTS与光纤光栅FBG解调仪有什么区别?

分布式光纤测温DTS和光纤光栅FBG解调仪之间存在本质区别。分布式光纤测温DTS是一种完全分布式的温度监测技术,意味着光纤的整个长度都充当传感器,可以感知任何位置的温度变化。然而,由于空间分辨率的限制,目前国内外的大多数技术只…

Three.js中的Raycasting技术:实现3D场景交互事件的Raycaster详解

前言 在Web开发中,Three.js是一个极为强大的库,它让开发者能够轻松地在浏览器中创建和展示3D图形。随着3D技术在网页设计、游戏开发、数据可视化等领域的广泛应用,用户与3D场景的交互变得日益重要。而要实现这种交互,一个核心的技…

探索地产营销管理系统业务架构的设计与应用

随着城市化进程的加速和人们对居住环境需求的不断提升,地产行业正迎来前所未有的发展机遇和挑战。在这个背景下,地产营销管理系统作为地产开发企业营销管理的重要工具,扮演着至关重要的角色。本文将深入探讨地产营销管理系统业务架构的设计与…

java中的面试高频问题----2

一、进程、线程、协程有什么区别? 1.进程:进程是操作系统中独立运行的程序实例,每个进程都有自己的内存空间和系统资源;进程之间相互独立,每个进程有自己的内存地址空间,一个进程无法直接访问另一个进程的…

H3C运维工程师面经

H3C运维工程师面经 1、常用linux命令:top的作用1.1.系统监控与性能分析:1.2.进程管理:1.3.资源使用统计:1.4.自定义视图与交互操作:2、接触过的linux系统、小版本是多少?2.1CentOS的版本CentOS 8系列:CentOS 7系列:CentOS 6系列:2.2Ubuntu版本Ubuntu LTS版本:Ubuntu非…

手机怎么压缩图片?通过三种压缩操作

手机怎么压缩图片?在智能手机日益普及的今天,拍照分享已成为日常生活的一部分。然而,高质量的照片往往占用较大的存储空间,且在网络上传输时速度较慢。那么,如何在手机上压缩图片呢?本文将介绍三种实用的手…

文件无法在当前环境下执行在 x86_64 系统上运行 ARM 可执行文件

目录 遇到的问题是由于"..."文件无法在当前环境下执行。这个错误通常是因为二进制文件的格式不兼容,可能是因为它是为不同的架构编译的。例如,如果二进制文件是为 x86 架构编译的,但你在 ARM 设备上尝试运行它,就会出现…

Oracle创建索引的LOGGING | NOLOGGING区别

在Oracle中,创建索引时的LOGGING和NOLOGGING选项主要影响索引创建过程中产生的重做日志(redo log)的数量。这两个选项对于性能和数据恢复能力有着显著的影响。以下是关于这两个选项的详细解释和区别: LOGGING 定义:当…

[数据集][目标检测]道路圆石墩检测数据集VOC+YOLO格式461张1类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):462 标注数量(xml文件个数):462 标注数量(txt文件个数):462 标注类别…

Python怎么做单元测试

在Python中,最常用的单元测试框架是unittest。以下是如何使用unittest进行单元测试的步骤: 导入unittest模块: 首先,你需要导入unittest模块。 import unittest创建测试类: 你需要创建一个继承自unittest.TestCase的类…

运放应用2 - 同相放大电路

1. 前置知识 同相放大电路存在 负反馈电路 ,工作在线性区,可以利用 虚短 概念来分析电路。 注:运放的 虚断 特性是一直存在的,虚短 特性则需要运放工作在 线性区 有关运放的基础知识,可以参考我的另外一篇文章&#x…

LeetCode题练习与总结:杨辉三角--118

一、题目描述 给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: numRows 5 输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]示例 2: 输入: numRows 1 输出: [[1…