Golang学习笔记(3)---go语言变量、常量的定义及赋值

单个变量的赋值与声明

变量的声明格式:var  <变量名称>  <变量类型>

变量的赋值格式:<变量名称> = <表达式>

声明的同时赋值:var <变量名称> [变量类型] = <表达式>

<变量名> := <变量值>  --->只能在函数体内使用

多个变量的复制与声明

全局变量的声明可以使用var()的方式简写

全局变量的声明不可以省略var,但可使用并行的方式

所有变量都可以使用类型推断

并行方式的声明:

var a,b,c,d int=1,2,3,4

函数体内:

a,b,c,d :=1,2,3,4

空白符

_ 使用空白符,来对某个返回值,进行忽略

变量的类型转换

Go中不存在隐式转换,所有类型转换必须显式声明    -->保证了go是一个类型安全的语言

转换只能发生在两种相互兼容的类型之间

格式为: <变量A> [:]  type变量A (变量B)

var a float32 = 1.1
b := int(a)
由于浮点型到整型的转换只是一个精度的丢失,这种是可以进行转换的
var a bool = true
b := int(a)
该表达式无法通过编译,因为类型不兼容,所以不能进行相互转换

注意:在对int型转换为string型时,string(),表示把变量a转换为string格式,因为计算机中存储的任何东西本质上都是由0和1表示的数字,因此此函数自然的认为我们需要的是用数字65表示的文本(A)。

所以如果我们要把65转换为 字符串“65”的话,就需要使用strconv这个包了。(strconv.Itoa)

而如果把字符串转换为int,那么就需要用(strconv.Atoi)

注意:这里只能转换字符串型数字,类似“1”,“123”等。

常量的定义

- 常亮的值在编译时就已经确定

- 常量的定义格式与变量基本相同

- 等号右则必须是常量或者常量表达式

- 常量表达式的函数必须是内置函数

初始化规则与枚举

- 在定义常量组时,如果不提供初始值,则表示使用上一行的表达式(注意,如果上一行定义了两个常量,那么下一行也要定义两个常量才可以)

- 使用相同的表达式不代表具有相同的值

- iota是常量的计数器,从0开始,组中每定义1个常量自动递增1

- 通过初始化规则与iota可以达到枚举效果

- 每遇到一个const关键字,iota就会重置为0

由于之前已经定义了两个常量(0,1)所以定义的c如果iota的话就是2了,直到遇到下一个const,才会被重置为0

常量命名建议:建议都使用大写。如果不想让外部引用可以在前面添加c(const)或者_来区分

时间: 2024-08-02 06:58:05

Golang学习笔记(3)---go语言变量、常量的定义及赋值的相关文章

Swift 学习笔记第一天-变量常量,及数据类型

1.定义变量 用关键字 var 比如 var i=2 2.定义常量用let 如let c=3 可见Swift 定义时不用指定类型.由编译器推断 如果想指定类型 var i:Int32=2 练习 let apples=3 var h:Int32=32 h=32 let cs="i love \(apples + h)as" cs 得结果 会发现程序报错.a could not find member ''convertfromstringInterpolationSegment"

Go语言学习笔记(一) [Go语言的HelloWorld]

日期:2014年7月18日 1.简介 Go 编程语言是一个使得程序员更加有效率的开源项目.Go 是有表达力.简 洁.清晰和有效率的.它的并行机制使其很容易编写多核和网络应用,而新奇的类型系统允许构建有性的模块化程序.Go 编译到机器码非常快 速,同时具有便利的垃圾回收和强大的运行时反射.它是快速的.静态类型编译语言,但是感觉上是动态类型的,解释型语言. Go 是第一个实现了简单的(或更加简单的)并行开发,且跨平台的类 C 语言. 2.Go语言文档查看 安装好Go语言之后,其文档可以通过go do

golang学习笔记————字符串

字符串的创建 在golang中 字符串是使用双引号("")包裹住的字符序列: 字符是使用单引号('')包裹住的单一字符: 声明字符串的方式:var strvalue string 声明并创建的方式:strvalue := "This is a string!"; KeyPoint: 一旦字符串变量被初始化后,则不可单独改变该字符串序列中的某一字符:但该字符串变量可以重新被赋值: Ex:   strvalue := "abcd" fmt.Print

javascript学习笔记---ECMAScript语法(变量)

变量声明关键字var: var i = 1: var t = "asd"; var test1 = "hi", test2 = "hello"; 声明变量不一定要初始化, var i;//ok 另一方面在使用变量前若未加关键字var,则此变量为全局变量(此特性需特别记住). 变量名字: 变量名需要遵守两条简单的规则: 第一个字符必须是字母.下划线(_)或美元符号($) 余下的字符可以是下划线.美元符号或任何字母或数字字符 命名变量规则: Came

C++学习笔记29,引用变量(1)

引用变量在创建的时候就必须初始化.无法创建一个未被初始化的引用. #include <iostream> using namespace std; int main() { int x=10; int y=20; int &r1; } 编译结果: 如果引用未被初始化,编译将报错. 修改引用: 引用总是指向初始化的那个变量,也就是说,引用一旦被创建并初始化之后就无法改变.这一规则有点让人迷惑.. 如果声明了一个引用的同时使用一个变量赋值了,那么这个引用就会一直指向这个变量. 在此后使用变

Java学习笔记(Java语言规范,API,JDK,IDE)

Java语言规范:java.sun.com/docs/books/jls 三个版本的API:J2SE J2EE J2ME 1. J2SE 客户端独立应用程序或者applet 2. J2EE 服务端应用程序 [Java Servlets&JavaServer Page] 3. J2ME 移动设备变成 JDK为Java开发提供一个开发环境(IDE) Java学习笔记(Java语言规范,API,JDK,IDE)

互联网世界中的C语言——我的golang学习笔记:1(基础语法快速过)

前言 学习任何知识都会有一个学习背景 最近,我们团队乃至我司整个云服务,上go的呼声越来越高!新服务已经开始用go开发,部分现有Java版的服务重构为go也只是时间问题而已,故相关技术积累势在必行!在云网络的分布式服务乃至在一切高并发,分布式后台服务中,golang都有着很大的优势. 据我对国内互联网行业的实际考察,了解,目前国内主流互联网公司都在积极投入go的怀抱…… 青云更是全栈使用了go…… 还有火的一塌糊涂的docker. 它为云而生. 它为并发而生. 还有go的安全.简洁.高效 有良好

Golang学习笔记(1)---go程序一般结构

Go程序是通过 package来组织的(与python的库类似) 只有package名称为main的包可以包涵main函数(同时main函数也是一个程序的入口) 一个可执行程序有且仅有一个main包 通过import关键字来引入其他非main包 通过const关键字来进行常量的定义 通过在函数体外部使用var关键字来进行全局变量的声明与赋值 通过type关键字来进行结构(struct)或接口(interface)的声明----一般(自定义)类型 通过func关键字来进行函数的声明 一般格式为:

非专业码农 JAVA学习笔记 2 java语言基础

java语言基础 (一)程序构成 略 (二)数据类型变量和常量 1.数据类型(与c#差不多) 布尔bool 8位 字节byte 8   -128-127 字符char 16 短整型Short 16 Int 32 Long 64 Float 32 Double 64 2.标识符-变量常量方法对象和类的名字标记 字母数字 还有两个特殊符号_ 和$ 字母下划线或者美元符号开头 3.常量 4.变量 (三)表达式 1.赋值和强制类型转换 Tostring()弱转换 类型=(类型)变量:a=(int)b;a