Go语言学习笔记(二) [变量、类型、关键字]
日期:2014年7月19日
1、Go 在语法上有着类 C 的感觉。如果你希望将两个(或更多)语句放在一行书写,它们 必须用分号分隔。一般情况下,你不需要分号。
同其他语言不同的地方在于变量的类型在变量名的后面。例如:不是,int a,而是 a int。当定义了一个变量,它默认赋值为其类型的 null
值。这意味着,在 var a int后,a 的 值为 0。而 var s string,意味着 s 被赋值为零长度字符串,也就是 ""。
当我们想要明确长度时,可以使用int32(uint32)。完整的整数类型列表(符号和无符号)是
int8,int16,int32,int64 和 byte,uint8,uint16,uint32,uint64。byte 是 uint8
的别名。浮点类型的值有 float32 和 float64 (没有 float 类型)。64 位的整数和浮点数总是 64 位的,即便是在 32
位的架构上。需要留意的是这些类型全部都是独立的,并且混合用这些类型向变量赋值会引起编译 器错误。
rune是int32的别名,用 UTF-8 进行编码。这个类型在什么时候使用呢?例如需要
遍历字符串中的字符。可以循环每个字节(仅在使用 US ASCII 编码字符串时与字符等 价,而它们在 Go
中不存在!)。因此为了获得实际的字符,需要使用 rune 类型。



Go语言学习笔记(二) [变量、类型、关键字]的更多相关文章
- Go语言学习笔记二: 变量
Go语言学习笔记二: 变量 今天又学了一招如何查看go的版本的命令:go version.另外上一个笔记中的代码还可以使用go run hello.go来运行,只是这种方式不会生成exe文件. 定义变 ...
- C#学习笔记二: C#类型详解
前言 这次分享的主要内容有五个, 分别是值类型和引用类型, 装箱与拆箱,常量与变量,运算符重载,static字段和static构造函数. 后期的分享会针对于C#2.0 3.0 4.0 等新特性进行. ...
- 【GO】GO语言学习笔记二
基本类型: 布尔型:boolean 整型:int8,byte,int16,int,uint,uintptr等 浮点型:float32,float64 复数类型:complex64,complex128 ...
- Go语言学习笔记(2)——变量、常量
1. 变量(变量由字母.数字和下划线组成,且不能以数字开头!) 1.1 第一种 var name type // 未赋值时使用默认值 name = value 1.2 第二种: 根据所赋的值 ...
- Go语言学习笔记1 变量,类型以及赋值
1.变量 1.1 声明变量 使用var关键字可以创建一个指定类型的变量: var i int = 0 var i = 0 var i int 以上三个表达式均是合法的,第三个表达式会将i初始化为int ...
- C语言学习笔记--enum和sizeof关键字
1.enum关键字 C语言中enum关键字用来定义枚举类型 (1)enum 是 C 语言中的一种自定义类型(2)enum 值是可以根据需要自定义的的整型值(3)第一个定义的 enum 值默认为 0 ( ...
- C语言学习笔记二---数据类型运算符与表达式
一.C的基本语法单位 1.标识符:有效长度:31(DOS环境下) 2.关键字:main不是 3.分隔符:空格符,制表符,换行符,换页符 4.注释符:a./*.....*/ b.// 二.C的常用输 ...
- 初步swift语言学习笔记2(可选类型?和隐式可选类型!)
作者:fengsh998 原文地址:http://blog.csdn.net/fengsh998/article/details/28904115 转载请注明出处 假设认为文章对你有所帮助.请通过留言 ...
- c语言学习笔记 const变量
在c语言的编程过程中经常会遇到有常数参加运算的运算,比如这种. int a=100*b; 这个100我们叫常数或者叫常量,但是程序中我们不推荐这种直接写常数的方法,有两个缺点. 第一是程序可读性差. ...
随机推荐
- 【APP测试(Android)】--升级更新
- ABP框架系列之四十七:(SignalR-Integration-SignalR-集成)
Introduction Abp.Web.SignalR nuget package makes it easily to use SignalR in ASP.NET Boilerplate bas ...
- 把router-link标签渲染成指定的标签
<router-link>标签默认渲染成 <a>标签,可以通过tag属性把router-link渲染成指定的标签,如: <router-link to="/&q ...
- python之os库
python之os库 os.name 判断现在正在实用的平台,Windows 返回 'nt'; Linux 返回'posix' >>> os.name 'nt' os.getcwd( ...
- 基于UML的毕业选题系统建模研究
一.基本信息 标题:基于UML的毕业选题系统建模研究 时间:2018 出版源:电脑迷 领域分类:UML建模技术 二.研究背景 问题定义:为了加强学生设计分析开发软件的相关能力,有效避免结构化模型存在的 ...
- bzoj4555(多项式求逆解法)
//和以前写的fft不太一样,可能是因为要取模?? #include<iostream> #include<cstring> #include<cmath> #in ...
- okhttp 调用相机 上传服务器
MainActivity package com.bwie.lianxi1; import android.content.Intent; import android.database.Cursor ...
- Delphi控件cxGrid 如何动态创建列?
方法一: var i: Integer; Column: TcxGridDBColumn; cxView: TcxGridDBTableView; begin cxView := Self.Level ...
- Hessian 使用例子
一.协议包(数据对象需要实现序列化接口,可以用于服务端接口.客户端调用服务之用) /** * */ package com.junge.demo.protocol.model; import java ...
- SQL Server使用证书最小粒度授权
最近在项目中某个功能遇到了阻塞造成的Time out错误.所以需要在执行该功能的时候开启一个线程检测SQL Server中阻塞会话.但是程序本身使用的sql帐号本身不具备VIEW Sever Stat ...