04-Golang的一些基本变量

news2024/10/2 10:44:30

Golang的一些基本变量

  • 变量介绍
    • 概念
  • 变量使用注意事项
    • 变量的使用的基本步骤
    • 程序中 +号的使用

变量介绍

概念

变量相当于内存中一个数据存储空间的表示,你可以把变量看作是一个个房间的门牌号,通过门牌号我们可以找到房间,同样的道理,通过变量名可以访问到变量(值)。

变量使用注意事项

1.声明变量(定义变量)

2.给变量赋值

3.使用变量

package main
import "fmt"

func mian(){
	//定义变量/声明变量
	var i int
	//给i赋值
	i = 20
	//使用变量
	fmt.Println("i=", i)
}

变量的使用的基本步骤

  • 1.变量表示内存中的一个存储区域
  • 2.该区域有自己的名称(变量名)和类型(数据类型)
  • 3.Golang变量使用的三种方式
    • (1).第一种:指定变量类型,声明后若不赋值,使用默认值
    • (2).第二种:根据值自信吧、判定变量类型(类型推导)
    • (3)第三种:省略var,注意:=左侧的变量不应该是已经声明过的,否则会导致编译错误
package main
import "fmt"

func main(){
	//golang的使用方式一
	//第一种:指定变量类型,声明后若不赋值,使用默认值
	var i int
	fmt.Println("i=", i)
	//第二种:根据值自信判定变量类型(类型推导)
	var num = 10.11
	fmt.Println("num=", num)
	//第三种:省略var,注意:=左侧的变量不应该是已经声明过的,否则或导致编译错误
	//下面的方式等价var name string name = "tom"
	//:=中的:不能省略,否则错误
	name := "tom"
	fmt.Println("name=", name)
}

在这里插入图片描述

  • 4.多变量声明,在编译中,有时我们需要一次性声明多个变量,Golang也提供这样的语法
package main
import "fmt"

func main(){
	//该案例演示golang如何一次性声明多个变量
	var n1, n2, n3 int
	fmt.Println("n1=",n1, "n2=",n2, "n3=",n3)

	//一次行声明多个变量的方式2
	var n4, name, n5 = 100, "tom", 888
	fmt.Println("n4=",n4, "name=",name, "n5=",n5)

	//一次性声明多个变量的的方式3,同样可以使用类型推导
	n6, n7, n8 := 100, 33, 11
	fmt.Println("n6=", n6, "n7=",n7, "n8=",n8)
}

在这里插入图片描述

  • 5.该区域的数据值可以在同一类型范围内不断变化
package main
import "fmt"

//变量使用的注意事项
func fmt(){
	//该区域的数据值可以在同一类型范围内不断变化
	var i int = 19
	i = 30
	i = 50
	fmt.Println("i=",i)
}
  • 6.变量在同一个作用域内不能重名
  • 7.变量=变量名+数值+数据类型
  • 8.Golang的变量如果没有赋初值,编译器会使用默认值,比如int默认值0,string默认值为空串

程序中 +号的使用

  • 1当左右两边都是数值型时,则做加法运算
  • 2.当左右两边都是字符串,则做字符串拼接
package main
import "fmt"

//演示golang中+号的使用
func main(){
	var i = 1
	var j = 2
	var r = i + j //做加法运算
	fmt.Println("r=", r)

	var str1 = "hello"
	var str2 = "world"
	var res = str1 + str2 //作拼接操作
	fmt.Println("res=", res)
}

在这里插入图片描述

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

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

相关文章

Mycat(1):Mycat简介

1、什么是MyCat MyCat是目前最流行的分布式数据库中间插件,是一个开源的分布式数据库系统,是一个实现了MySQL协议的服务器,前端用户可以把它看作是一个数据库代理,用MySQL客户端工具和命令行访问,而其后端可以用MySQL…

ODN 2395丨艾美捷CpG ODN系列参数介绍

艾美捷CpG ODN系列——ODN 2006:具有硫代磷酸酯骨架的CpG寡脱氧核苷酸(C型)。人和小鼠TLR9(Toll样受体9)的特异性配体。 艾美捷CpG ODN 丨ODN 2395化学性质: 序列:5-tcgtcgtttttcggcgcgcgccgcg…

基于java+springmvc+mybatis+vue+mysql的班级事务管理系统

项目介绍 学校教务管理信息化是提高办公效率的主要途径,随着我国高等教育的快速发展,学校办学规模的不断扩大,在校学生人数不断增多,办学层次出现多元化,由一地办学发展到多地多点办学,同时进一步推行学分…

一文弄懂Java中线程池原理

在工作中,我们经常使用线程池,但是你真的了解线程池的原理吗?同时,线程池工作原理和底层实现原理也是面试经常问的考题,所以,今天我们一起聊聊线程池的原理吧。 为什么要用线程池 使用线程池主要有以下三…

44 有效括号序列 45滑动窗口的最大值

44 有效括号序列 很容易想到用栈&#xff0c;但是一开始还是写得有问题 import java.util.*;public class Solution {/*** * param s string字符串 * return bool布尔型*/public boolean isValid (String s) {// write code hereStack<Character> st new Stack<>…

详解 InnoDB ReplicaSet

详解 InnoDB ReplicaSetInnoDB ReplicaSet 是什么&#xff1f;InnoDB ReplicaSet 的优缺点InnoDB ReplicaSet 的限制部署 InnoDB ReplicaSet1. 准备两个 MySQL 实例添加新实例的配置选项到 /etc/my.cnf分别在两台主机上进行预配置2. 使用 MySQL Shell 连接到一个实例来配置两个…

海康安防平台对接

1.前置准备工作 1.1下载h5播放器 https://open.hikvision.com/download/5c67f1e2f05948198c909700?type10安装包解压 1.2配置nginx反向代理 将解压的h5放到nginx目录下 配置nginx配置文件,修改如下两个配置 server {listen 9051;server_name localhost;#charset …

Python密码锁屏窗体界面

程序示例精选 Python密码锁屏窗体界面 如需安装运行环境或远程调试&#xff0c;见文章底部微信名片&#xff0c;由专业技术人员远程协助&#xff01; 前言 这篇博客针对《Python密码锁屏窗体界面》编写代码&#xff0c; 原理上没有采用Windows自带锁屏模块&#xff0c;是通过软…

通过左旋和右旋来实现搜索二叉树的自平衡

首先左旋和右旋的概念都是在平衡二叉树的基础上提出的。并对AVL树 SB树 红黑树在原理层面进行了简单的介绍&#xff0c;无coding。 什么是左旋&#xff1f; 假设存在下述平衡二叉树&#xff08;某个结点的左子节点都小于该结点&#xff0c;右子结点右大于大结点&#xff09;&…

初识单链表/单链表头指针的创建

链表的概念及结构 概念&#xff1a;链表是一种物理存储结构上非连续、非顺序的存储结构。链表不像数组中的元素那样&#xff0c;每个数据的的地址是连续的。数组的物理存储结构&#xff1a;数组中上一个数据的地址和下一个数据的地址是连续的&#xff0c;正好差一个整型大小 链…

做副业找不到好项目?公众号依旧是最优选择

大家好&#xff0c;我是蝶衣王的小编&#xff0c;今天分享一下公众号还是否值得做呢 说到做自媒体账号赚钱&#xff0c;有些人可能会说是2022年谁看公众号&#xff0c;阅读量都不如以前了&#xff0c;大家都跑去刷短视频。其实不错&#xff0c;但是对于不想露脸的人来说&#…

深圳大学数学文化赏析MOOC第二次作业答案(满分)

一、单选题 (共 40.00 分) 1. 以下各数集中&#xff0c;不可数的一个是&#xff08; &#xff09; A. 自然数集 B. 整数集 C. 有理数集 D. 无理数集 满分&#xff1a;2.00 分 得分&#xff1a;2.00 分 你的答案&#xff1a; D 正确答案&#xff1a; D 教师评…

java计算机毕业设计ssm重点实验室系统

项目介绍 本重点实验室系统是针对目前仓库的实际需求,从实际工作出发,对过去的重点实验室系统存在的问题进行分析,完善用户的使用体会。采用计算机系统来管理信息,取代人工管理模式,查询便利,信息准确率高,节省了开支,提高了工作的效率。 本系统结合计算机系统的结构、概念、…

机器学习100天:目录

《机器学习100天》&#xff01;理论python&#xff01;实战真正的从零开始机器学习&#xff0c;循序渐进&#xff0c;适合初学者快速入门和进阶&#xff01; 思维导图&#xff1a; 第0章&#xff1a;准备工作 001 开发环境搭建 第1章&#xff1a;数据预处理 002 导入数据集 …

超级简单的vue课程设计电商购物系统,没有数据库文件,通过模拟数据操作

详细地址&#xff1a;《《《下载地址》》》 基于vue前端项目开发的电商购物系统&#xff0c;主要包括商品的列表、商品的详细页、加入购车、注册、用户登录用户等基本的功能。适合于课程设计&#xff0c;该项目的开发没有用到MYSQL数据库&#xff0c;通过模拟数据进行读取&…

转行如何自学Python并且找到工作,分享自己心得

我是25岁转行学python的。说实在&#xff0c;转行就是奔着挣钱去的。希望我的经历可以给想转行的朋友带来一点启发和借鉴。 先简单介绍下个人背景&#xff0c;三流大学毕业&#xff0c;电子商务专业&#xff0c;学习能力一般&#xff0c;没啥特别技能&#xff0c;反正就很普通…

Charles mock数据:

前提&#xff1a;确保手机已和PC上的Charles代理链接成功。 我们在平时的业务开发中&#xff0c;经常有端上已开发完成&#xff0c;但后端接口还没有Ready的情况&#xff1b;或者需要接口频繁变更数据来测试各种case的情况。这样如果过度依赖接口&#xff0c;肯定会极大降低我…

[附源码]Node.js计算机毕业设计糕点销售网站Express

项目运行 环境配置&#xff1a; Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术&#xff1a; Express框架 Node.js Vue 等等组成&#xff0c;B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境&#xff1a;最好是Nodejs最新版&#xff0c;我…

毕业设计-基于大数据的房地产数据分析与预测-python

目录 前言 课题背景和意义 实现技术思路 实现效果图样例 前言 &#x1f4c5;大四是整个大学期间最忙碌的时光,一边要忙着备考或实习为毕业后面临的就业升学做准备,一边要为毕业设计耗费大量精力。近几年各个学校要求的毕设项目越来越难,有不少课题是研究生级别难度的,对本科…

【Numpy】Numpy光速起步(初学者必备基础知识)

Ding Jiaxiong【2022-12-16】 Gitee仓库:https://gitee.com/DingJiaxiong/machine-learning-study.git 文章目录导入numpy认识数组数组的更多信息创建基本数组添加、删除和排序元素数组的形状和大小重塑数组将一维数组转换为二维数组【即如何向数组中添加新轴】索引和切片从现有…