基础类型

命名

Go语言中的函数名、变量名、常量名、类型名、语句标号和包名等所有的命名,都遵循一个简单的命名规则:一个名字必须以一个字母(Unicode字母)或下划线开头,后面可以跟任意数量的字母、数字或下划线。大写字母和小写字母是不同的:heapSort和Heapsort是两个不同的名字。

Go语言中类似if和switch的关键字有25个(均为小写)。关键字不能用于自定义名字,只能在特定语法结构中使用。

break       

此外,还有大约30多个预定义的名字,比如int和true等,主要对应内建的常量、类型和函数。

内建常量:

true 

内建类型:

int 

内建函数:

make 

变量

变量是几乎所有编程语言中最基本的组成元素,变量是程序运行期间可以改变的量。

从根本上说,变量相当于是对一块数据存储空间的命名,程序可以通过定义一个变量来申请一块数据存储空间,之后可以通过引用变量名来使用这块存储空间。

变量声明

Go语言的变量声明方式与C和C++语言有明显的不同。对于纯粹的变量声明, Go语言引入了关键字var,而类型信息放在变量名之后,示例如下:

var 

变量初始化
对于声明变量时需要进行初始化的场景, var关键字可以保留,但不再是必要的元素,如下所示:

var 

变量赋值

var 

匿名变量
_(下划线)是个特殊的变量名,任何赋予它的值都会被丢弃:

_

常量
在Go语言中,常量是指编译期间就已知且不可改变的值。常量可以是数值类型(包括整型、浮点型和复数类型)、布尔类型、字符串类型等。
字面常量(常量值)
所谓字面常量(literal),是指程序中硬编码的常量,如:

123

常量定义

const 

iota枚举

常量声明可以使用iota常量生成器初始化,它用于生成一组以相似规则初始化的常量,但是不用每行都写一遍初始化表达式。

在一个const声明语句中,在第一个声明的常量所在的行,iota将会被置为0,然后在每一个有常量声明的行加一。

const 

基础数据类型

分类

Go语言内置以下这些基础类型:

布尔类型

var 

整型

var 

浮点型

var 

字符类型

在Go语言中支持两个字符类型,一个是byte(实际上是uint8的别名),代表utf-8字符串的单个字节的值;另一个是rune,代表单个unicode字符。

package 

字符串类型

在Go语言中,字符串也是一种基本类型:

var 

复数类型

复数实际上由两个实数(在计算机中用浮点数表示)构成,一个表示实部(real),一个表示虚部(imag)。

var 

fmt包的格式化输出输入

格式说明

输出

//整型

输人

var 

类型转换

Go语言中不允许隐式转换,所有类型转换必须显式声明,而且转换只能发生在两种相互兼容的类型之间。

var 

类型别名

type 

含枚举类型的函数声明_02Golang基础类型相关推荐

  1. c语言复杂类型作函数,C语言基础-复杂数据类型

    数组 ‍ 什么是数组? 数组是一组数目固定.类型相同的数据项,数组中的数据称为元素 数组的定义格式:     类型 数组名[元素个数] int num[5] = {1,2,3,4,5} // 这个数组 ...

  2. 函数声明是形参类型省略

    如果参数类型省略,默认为int类型.(此为古老写法) #include<stdio.h>float average(a,n) int a[]; {int j;float s=0;float ...

  3. python函数的参数类型,Python函数的主要参数类型

    形式参数(形参) 在定义函数阶段定义的参数称之为形参,相当于变量名 位置形参(普通形参) 位置形参:在函数定义阶段,按照从左到右的顺序定义 特点:必须被传值,且实参与形参按照顺序一一对应,多一个少一个 ...

  4. ts语法基础——基础类型

    TS 语法 TS 基础类型 TypeScript 支持与 JavaScript 几乎相同的数据类型,此外还提供了实用的枚举类型方便我们使用 TS 支持的变量类型如下: 类型 描述 boolean 限制 ...

  5. 【Kotlin】函数类型 ( 函数类型 | 带参数名称的参数列表 | 可空函数类型 | 复杂函数类型 | 带接收者函数类型 | 函数类型别名 | 函数类型实例化 | 函数调用 )

    文章目录 I . 函数类型 II . 带参数名的参数列表 III . 可空函数类型 IV . 复杂函数类型解读 V . 函数类型别名 VI . 带 接收者类型 的函数类型 VII . 函数类型实例化 ...

  6. TS第一讲-----基础类型

    1.基础类型 // 布尔值 let flag:boolean = true// 数字类型 let a1:number = 10 // 十进制 let a2:number = 0b1010 // 二进制 ...

  7. Javascript 函数声明和函数表达式的区别

    2019独角兽企业重金招聘Python工程师标准>>> Javascript Function无处不在,而且功能强大!通过Javascript函数可以让JS具有面向对象的一些特征,实 ...

  8. ts 函数声明及泛型函数

    函数声明 函数声明对参数类型, 返回值类型定义,没有返回值定义为void //必传x,y并且类型都为number,返回值为布尔 function fun1(x:number,y:number):boo ...

  9. C++笔记---函数声明(prototype)

    前言:这篇转载的文章是我很久以前写的,但是后来手机换号了,又注册新号开始继续写blog.旧文章不能合并到新账号,就以转载的形式纪念下过去 最近在看<C++ Primer Plus>,奈何买 ...

最新文章

  1. Windows Phone 7新开发工具发布
  2. Java 找平方数之和的奇数
  3. 并发编程——进程——理论知识
  4. SAP UI5 应用开发教程之一:Hello World
  5. 两个构件的重合点_GTJ2018软件中如何合并两个工程?
  6. 博图os更新_博途TIA安装与更新
  7. armqt字体ttf_QT字体的设置
  8. Spring Security 3.0控制一个帐号只允许登录一次的问题
  9. 电脑自建服务器tomcat,怎么配置搭建tomcat服务器
  10. Java基础:红黑树概念
  11. HTML实用的网页代码大全
  12. 设计模式在项目中的应用案例_三菱PLC实际项目应用案例讲解
  13. 16年后,再次新注册个csdn账号
  14. VTK/OpenGL中球坐标转直角坐标
  15. 虚拟机Ubuntu不能识别外接U盘
  16. 【优化理论与方法】线性规划的基本定理
  17. linux启动时、登录时或注销时执行脚本
  18. 浣溪沙·江畔芦花【明书词两首】
  19. Neo4j入门之中国电影票房排行浅析
  20. 护眼台灯国家标准是什么?国aa和国a台灯区别大吗

热门文章

  1. WebSocket协议入门介绍
  2. Java面试题整理(附参考答案)
  3. 高倍数泡沫装置PHP_泡沫灭火系统,了解这几点就好
  4. bcc挖矿用什么_BCC对BTC挖矿有何影响?
  5. spring源码分析第六天------spring经典面试问题
  6. LeetCode算法入门- 3Sum -day9
  7. signature=08653706deda7871a1f662eae4d2b33e,The nature of nuclear Halpha emission in LINERs
  8. python常用进制转换の方法
  9. php curl curlopt_getfields,PHP中CURL的CURLOPT_POSTFIELDS参数使用细节
  10. 基于Java+SpringBoot+vue+node.js等疫情网课管理系统详细设计和实现