【GO语言基础】变量常量

news2024/11/25 15:23:00

系列文章目录

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


文章目录

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


常量和枚举

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

package main

import "fmt"
//表示星期
const (
	Monday    = 1
	Tuesday   = 2
	Wednesday = 3
	Thursday  = 4
	Friday    = 5
	Saturday  = 6
	Sunday    = 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 main

import "fmt"

func main() {
	//格式:变量 类型 = 值
	var num int = 18
	fmt.Println("age=", num)

	//使用类型默认值:未赋值使用默认值
	var num2 float64
	fmt.Println(num2)

	//根据赋值变为可变类型
	var num3 = "tom"
	fmt.Println(num3)

	//省略赋值方式
	sex := "男"
	fmt.Println(sex)

	//多变量声明方法
	var n1, n2, n3 int
	fmt.Println(n1)
	fmt.Println(n2)
	fmt.Println(n3)

	//多变量声明并赋值
	var n4, sex1, n6 = 10, "男", 7.8
	fmt.Println(n4)
	fmt.Println(sex1)
	fmt.Println(n6)

	//多变量声明并赋值简写方式
	age, height := 18, 172
	fmt.Println(age)
	fmt.Println(height)
}

在这里插入图片描述

全局变量声明

package main

import "fmt"

// 全局变量定义方法1
var n7 = 1
var n8 = 11

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

在这里插入图片描述

大小写敏感

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

package main

import "fmt"

//大小写敏感
var new1 int = 10
var NEW1 int = 20

func main() {
	fmt.Println(new1, NEW1) //测试代码
}

在这里插入图片描述

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

gofmt -w ./test.go

在这里插入图片描述

总结

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

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

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

相关文章

游戏平台加盟该怎么做?需要准备什么?

游戏平台加盟是一种合作模式,允许个人或企业以加盟商的身份参与游戏平台,并从中获得一定的权益和收益。以下是一些步骤和需要准备的事项,来考虑如何进行游戏平台加盟: 步骤: 研究市场和平台:了解游戏市场和…

【Python+selenium】自动化生成测试报告

批量执行完用例后,生成的测试报告是文本形式的,不够直观,为了更好的展示测试报告,最好是生成HTML格式的。 unittest里面是不能生成html格式报告的,需要导入一个第三方的模块:HTMLTestRunner 一、入HTMLTe…

BMS电池管理系统——BMS的功能模块及基本要素(二)

BMS电池管理系统 文章目录 BMS电池管理系统前言一、BMS电池管理系统各个功能模块的关系二、BMS的边界及基本要素 前言 前面了解了BMS以及他的功能模块,这些功能模块之间的关系是什么呢? 一、BMS电池管理系统各个功能模块的关系 下面我们分析一下这张图…

Yolov8-pose关键点检测:模型轻量化创新 | ScConv结合c2f | CVPR2023

💡💡💡本文解决什么问题:ScConv(空间和通道重建卷积),一个即插即用的架构单元,可以可以直接用来替代各种卷积神经网络中的标准卷积。 ScConv | GFLOPs从9.6降低至9,参数量从6482kb降低至6479kb Yolov8-Pose关键点检测专栏介绍:https://blog.csdn.net/m0_637742…

BLE Mesh蓝牙mesh网多跳大数据量高带宽传输数据方法

1、BLE Mesh数据传输现状 BLE Mesh网络技术是低功耗蓝牙的一个进阶版,Mesh扩大了蓝牙在应用中的规模和范围,因为它同时支持超过三万个网络节点,可以跨越大型建筑物,不仅可以使得医疗健康应用更加方便快捷,还能监测像学…

Javase | 数组、数组工具类

目录: 1.数组2.数组的 “存储结构”3.数组的优缺点:3.1 数组的优点3.2 为什么数组的检索效率高?3.3 数组的缺点 4.一维数组4.1 一维数组的“存储结构”4.2 一维数组的“静态初始化”4.3 一维数组的“动态初始化”4.4 一维数组的“遍历” 5.数…

闪存芯片的冷知识

闪存芯片不带电存储数据的原理 闪存芯片是一种非易失性的存储器,即它可以在断电后保持数据不丢失。闪存芯片的核心部分是浮栅晶体管(Floating Gate Transistor),它是一种特殊的MOSFET(金属氧化物半导体场效应晶体管&a…

方案:TSINGSEE青犀AI智能分析网关森林防火智慧监管平台方案

一、方案背景 森林是地球上最重要的生态系统之一,对环境、气候、水循环和空气质量具有重要影响。森林火灾会造成巨大的经济损失,具有发生面广、突发性强、破坏性大、危险性高、处置扑救特别困难等特点,严重危及人民生命财产和森林资源安全&a…

功能测试就只是说的点点点嘛,这么容易?

那你要知道往往说的容易,做起来难呀。 功能测试虽然说的是点点点,但是对于比较简单的一个小功能来说,确实没有什么太难得地方,点的流畅没有问题,那就再好不过,基本上有问题也是暴露的非常明显,…

用于充电桩直流计量电能表DJSF1352-RN/D带UL证书-安科瑞黄安南

1什么是UL认证? UL认证是由美国安全实验室(Underwriters Laboratories)提供的安全性认证服务。UL认证虽然不是强制的,但它是北美市场的保证,有UL标志的产品具有很高的市场认可度。 2安科瑞导轨式直流电能表 安科瑞导…

日志输出-查看 SQL:深入分析 MyBatis 执行过程

😀前言 在现代软件开发中,数据库操作是不可或缺的一部分,而持久层框架的应用能够极大地简化这一过程。然而,当我们在开发 MyBatis 程序时,有时候需要深入了解程序底层实际执行的 SQL 语句,以便更好地分析和…

C++毕业设计基于QT实现的超市收银管理系统源代码+数据库

C毕业设计基于QT实现的超市收银管理系统源代码数据库 编译使用 编译完成后,需要拷贝 file目录下的数据库 POP.db文件到可执行程序目录下 登录界面 主界面 会员管理 完整代码下载地址:基于QT实现的超市收银管理系统源代码数据库

Linux基础知识及常见指令

Linux简介及相关概念 什么是Linux? Linux是一个免费开源的操作系统内核,最初由Linus Torvalds于1991年创建。它是各种Linux发行版(通常称为“发行版”)的核心组件,这些发行版是完整的操作系统,包括Linux内…

centos7手动配置jdk1.8环境与maven环境

安装jdk1.8 链接:https://pan.baidu.com/s/1_P7jHzH4Lk2jcPWWD7pi4w 提取码:6kkm winscp软件上传压缩包到Linux中 解压 # 解压到/usr/local/java目录下 tar -zxvf jdk-8u381-linux-x64.tar.gz -C /usr/local/java配置环境变量 vi /etc/profile # 最后…

【C++】vector的模拟实现【完整版】

目录 一、vector的默认成员函数 1、vector类的大体结构 2、无参构造函数 3、拷贝构造函数 4、Swap(operator需要用) 5、赋值重载operator 6、析构函数 二、vector的三种遍历方式 1、size和capacity(大小和容量) 2、 operator[]遍历 3、迭代器iterator遍历和范围for 三…

C++ 判断

C 判断 判断结构要求程序员指定一个或多个要评估或测试的条件,以及条件为真时要执行的语句(必需的)和条件为假时要执行的语句(可选的)。 下面是大多数编程语言中典型的判断结构的一般形式: 判断语句 C 编…

基于Dubbo实现服务的远程调用

目录 前言 为什么使用Dubbo Dubbo技术框架 ​编辑 调用关系流程 基础实现 A.提供统一业务Api B.编辑服务提供者Product B.a 添加依赖 B.b 添加Dubbo 配置(基于yaml配置文件) B.c 编写并暴露服务 C.编辑服务消费者 C.a 添加依赖 C.b 添加Dubbo配置 C.c 引用服务 前言…

Arduino程序设计(八)LCD显示实验

LCD显示实验 前言一、基于LM35的LCD显示实验1. LM35简介2. LCD1602简介3. LM35采集环境温度LCD显示 二、基于DS18B20的LCD显示实验1. DS18B20简介2. DS18B20采集环境温度LCD显示 三、基于DHT11采集环境温湿度LCD显示1. DHT11简介2. DHT11采集环境温湿度LCD显示 前言 本文主要介…

高忆管理:a股b股h股n股的区别?

A股、B股、H股、N股,这些股票标识的差异,是初学者往往比较无措的。本文将从多个角度剖析这些股票的区别,协助读者更好地了解和运用出资。 1.不同的出资主体 首要,要了解这些标识的意义。A股、B股、H股、N股是不同的出资主体。A股…

蠕虫病毒流量分析案例

背景 某供排水集团的网络管理员对其网络的健康状况持认可态度,表示网络运行正常,没有发现异常行为。然而,由于网络环境变得越来越复杂,仅凭借传统的网络经验已经不能全面了解网络情况。因此,我们为供排水集团安装了Ne…