【GO语言基础】变量常量

系列文章目录

【Go语言学习】ide安装与配置
【GO语言基础】前言
【GO语言基础】变量常量
【GO语言基础】数据类型


文章目录

  • 系列文章目录
  • 常量和枚举
  • 变量声明
  • 全局变量声明
    • 大小写敏感
  • 总结


常量和枚举

使用const关键字声明常量,并为每个常量提供显式的值。Go语言没有显式的枚举类型,但可以使用常量模拟枚举。

package mainimport "fmt"
//表示星期
const (Monday    = 1Tuesday   = 2Wednesday = 3Thursday  = 4Friday    = 5Saturday  = 6Sunday    = 7
)func main() {fmt.Println(Monday)fmt.Println(Tuesday)fmt.Println(Wednesday)fmt.Println(Thursday)fmt.Println(Friday)fmt.Println(Saturday)fmt.Println(Sunday)
}

变量声明

变量必须在使用之前声明。可以使用短变量声明:=来同时声明和初始化变量。

package mainimport "fmt"func main() {//格式:变量 类型 = 值var num int = 18fmt.Println("age=", num)//使用类型默认值:未赋值使用默认值var num2 float64fmt.Println(num2)//根据赋值变为可变类型var num3 = "tom"fmt.Println(num3)//省略赋值方式sex := "男"fmt.Println(sex)//多变量声明方法var n1, n2, n3 intfmt.Println(n1)fmt.Println(n2)fmt.Println(n3)//多变量声明并赋值var n4, sex1, n6 = 10, "男", 7.8fmt.Println(n4)fmt.Println(sex1)fmt.Println(n6)//多变量声明并赋值简写方式age, height := 18, 172fmt.Println(age)fmt.Println(height)
}

在这里插入图片描述

全局变量声明

package mainimport "fmt"// 全局变量定义方法1
var n7 = 1
var n8 = 11// 全局变量定义方法2
var (n9  = 500n10 = "男"
)
//函数
func main() {fmt.Println(n7)fmt.Println(n8)fmt.Println(n9)fmt.Println(n10)
}

在这里插入图片描述

大小写敏感

Go语言是大小写敏感的,意味着variable和Variable被视为不同的标识符。导出的标识符(即首字母大写的标识符)可以在其他包中访问。

package mainimport "fmt"//大小写敏感
var new1 int = 10
var NEW1 int = 20func main() {fmt.Println(new1, NEW1) //测试代码
}

在这里插入图片描述

代码格式化:
使用gofmt命令或集成开发环境(IDE)的自动格式化功能,保持一致的代码风格,提高代码的可读性。(使用gofmt可以对代码格式化在前面的命令中也有)

gofmt -w ./test.go

在这里插入图片描述

总结

GO语言中变量和常量的命名规则是以字母或下划线开头,后面可以跟字母、数字或下划线。另外,GO语言是一种静态类型语言,变量的类型在编译时确定,而不是在运行时。

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

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

相关文章

算法训练营day48|动态规划 part09:打家劫舍(LeetCode 198.打家劫舍、213.打家劫舍II、337.打家劫舍 III)

文章目录 198.打家劫舍思路分析代码实现思考总结 213.打家劫舍II思路分析代码实现 337.打家劫舍 III (树形DP)思路分析代码实现思考总结 198.打家劫舍 题目链接🔥🔥 你是一个专业的小偷,计划偷窃沿街的房屋。每间房内都藏有一定的现金&#…

二维码智慧门牌管理系统:数据现势性,满足应用需求的根本保证

文章目录 前言一、项目背景二、数据的现势性三、系统的优势四、应用前景 前言 在当今信息化社会,数据的重要性日益凸显,尤其是数据的现势性,它决定着服务的质量和满足应用需求的能力。近日,一个创新的二维码智慧门牌管理系统项目…

033:跨域,vue端和 Nignx反向代理的配置详细解析

第033个 查看专栏目录: VUE ------ element UI 专栏目标 在vue和element UI联合技术栈的操控下,本专栏提供行之有效的源代码示例和信息点介绍,做到灵活运用。 (1)提供vue2的一些基本操作:安装、引用,模板使…

IEC 61850扫盲

目录 1 简介 2 主要特点 2.1 信息分层 2.2 信息模型与通信协议独立 2.3 数据自描述 2.4 面向对象数据统一建模 2.5 带确认服务 2.6 不带确认的服务 2.7 VMD(虚拟制造设备) 2.8 GOOSE(Generic Object Oriented Substation Event&…

Vue.js的服务器端渲染(SSR):为什么和如何

🌷🍁 博主猫头虎(🐅🐾)带您 Go to New World✨🍁 🦄 博客首页——🐅🐾猫头虎的博客🎐 🐳 《面试题大全专栏》 🦕 文章图文…

【C# Programming】继承、接口

一、继承 1、派生 继承在相似而又不同的概念之间建立了类层次概念。 更一般的类称为基类,更具体的类称为派生类。派生类继承了基类的所有性质。 定义派生类要在类标识符后面添加一个冒号,接着添加基类名。 public class PdaItem {public string Name {…

时序预测 | MATLAB实现ARMA自回归移动平均模型时间序列预测

时序预测 | MATLAB实现ARMA自回归移动平均模型时间序列预测 目录 时序预测 | MATLAB实现ARMA自回归移动平均模型时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 MATLAB实现ARMA时间序列预测(完整源码和数据) 本程序基于MATLAB的armax函…

安全实战 | 怎么用零信任防范弱密码?

防范弱密码,不仅需要提升安全性,更需要提升用户体验。 比如在登录各类业务系统时,我们希望员工登录不同系统不再频繁切换账号密码,不再需要3-5个月更换一次密码,也不再需要频繁的输入、记录、找回密码。 员工所有的办…

JDK9特性——模块化REPL工具

文章目录 前言模块化模块化案例 可交互的REPL工具 前言 谈到Java9大家往往第一个想到的就是Jigsaw项目(后改名为Modularity)。众所周知,Java已经发展超过20年(95年最初发布),Java和相关生态在不断丰富的同时也越来越暴露出一些问…

开源药店商城系统源码比较:哪个适合你的药品电商业务

在构建药品电商业务时,选择适合的药店商城系统源码是至关重要的决策之一。开源药店商城系统源码提供了快速入门的机会,但在选择之前,您需要仔细考虑您的需求、技术要求和可扩展性。本文将比较几个流行的开源药店商城系统源码,以帮…

照片批量处理 7000张

需求: 有6700照片导入系统; 系统只支持500张/每次; 6700 按机构分类复制提取出来; 分批次导入; 6700 分17份复制到对应文件夹中; 照片按照学号命名的; 20231715401.jpg 开始用bat脚本…

Chatbase:AI客服聊天机器人工具

【产品介绍】 名称 Chatbase.co 具体描述 Chatbase.co 是一个智能的聊天机器人平台,它可以帮助用户快速地构建、部署和分析用户的聊天机器人,无论 用户是一个初学者还是一个专家。用户可以使用 Chatbase.co …

C# 查找迷宫路径

1.导入图像&#xff0c;并且将图像转灰度 using var img new Image<Bgr, byte>(_path); using var grayImg img.Convert<Gray, byte>(); 2.自动二值化图像 using var inputGrayOut new Image<Gray, byte>(grayImg.Size); // 计算OTSU阈值 var threshol…

技师学院物联网实训室建建设方案

一、概述 1.1专业背景 物联网&#xff08;Internet of Things&#xff09;被称为继计算机、互联网之后世界信息产业第三次浪潮&#xff0c;它并非一个全新的技术领域&#xff0c;而是现代信息技术发展到一定阶段后出现的一种聚合性应用与技术提升&#xff0c;是随着传感网、通…

Echarts 旭日图的详细配置过程

文章目录 旭日图 简介配置过程简易示例 旭日图 简介 Echarts旭日图是一种数据可视化图表类型&#xff0c;用于展示层次关系数据的分布情况。旭日图通过不同的环形区域和扇形区域来表示数据的层次和大小关系&#xff0c;从而形成一个太阳的形状&#xff0c;因此得名旭日图。 E…

【深度学习】 Python 和 NumPy 系列教程(十五):Matplotlib详解:2、3d绘图类型(1):线框图(Wireframe Plot)

目录 一、前言 二、实验环境 三、Matplotlib详解 1、2d绘图类型 2、3d绘图类型 0. 设置中文字体 1. 线框图&#xff08;Wireframe Plot&#xff09; 一、前言 Python是一种高级编程语言&#xff0c;由Guido van Rossum于1991年创建。它以简洁、易读的语法而闻名&#xff0…

postman连接websocket, 建立连接、聊天测试(v8.5.1)

1. postman v8.5版本 以上支持 websocket。 2. 选择websocket请求模块File - New... 3. WebSocketServer.java import org.springframework.stereotype.Component; import javax.websocket.*; import javax.websocket.server.PathParam; import javax.websocket.server.Server…

巨人互动|Google海外户Google+有什么用途

Google是Google推出的一项社交网络服务&#xff0c;类似于Facebook和Twitter。它为用户提供了一个分享和交流的平台&#xff0c;具有许多不同的用途。 首先&#xff0c;Google可以让用户轻松地与朋友、家人、同事和其他人建立联系。通过添加他人为好友或加入共同兴趣的群组&am…

linux环境部署jmeter并执行测试

下载jmeter和jdk jmeter官网和java-jdk官网下载压缩包文件 jmeter下载地址&#xff1a;点此下载 jmeter Apache JMeter - Download Apache JMeter java-jdk下载地址&#xff1a;点此下载 jdk Java Downloads | Oracle 安装包根据Linux配置进行选择。 上传文件到Linux并解压文…

IDEA 打包MapReduce程序到集群运行的两种方式以及XShell和Xftp过期的解决

参考博客 【MapReduce打包成jar上传到集群运行】http://t.csdn.cn/2gK1d 【Xshell7/Xftp7 解决强制更新问题】http://t.csdn.cn/rxiBG IDEA打包MapReduce程序&#xff08;方式一&#xff09;【轻量级打包】 这里的打包是打包整个项目&#xff0c;后期等学会怎么打包单个指定…