Go有许多预定义类型,这里简单把它们分为基本类型和高级类型。下面是基本类型列表:

Go的基本类型共有18个,其中int和uint的实际宽度会根据计算架构的不同而不同。
在386计算架构下,它的宽度为32比特,即4个字节。
在amd64计算架构下,它们的宽度为64比特,即8个字节。

byte类型可以看作unit8的别名类型,而rune可以看作int32的别名类型。
rune类型专用于存储Unicode编码的单个字符。我们可以用5种方式来表示一个rune字面量。
  (1)该rune字面量所对应的字符,比如"a"或"-",这个字符必须是Unicode编码规范所支持的。
  (2)使用"\x"为前导并后跟两位十六进制数,这种方式可以表示宽度为1字节的值,即一个ASCII编码值。
  (3)使用"\"为前导并后跟3位八进制数,这种方式也只能表示有限宽度的值,
    即它只能用于表示在0和255之间的值,它与上一个表示法的表示范围是一致的。
  (4)使用"\u"为前导并后跟4位十六进制数,它只能用于表示2字节宽度的值。
  (5)使用"\U"为前导并后跟8位十六进制数,它只能用于表示4字节宽度的值,这种方式即为Unicode编码规范中的UCS-4表示法。

此外,rune字面量还支持一类特殊的字符序列——转义符。转义符的表示方法是在"\"后面追加一个特定的单字符。

除了上述转义符外,rune自变量中以”\“为前导的字符序列都是不和法的。

在Go中,字符串值表示了一个字符值的集合。
在底层,一个字符串值即一个包含了若干字节的序列。
长度为0的序列与一个空字符串相对应。字符串的长度即底层字节序列中字节的个数。
一个字符串字面量的长度在编译期间就能够确定。
字符串字面量有两种表示形式:原生字符串字面量(由反引号”、“包裹)和解释型字符串字面量(由双引号”"“包裹)。
前者所见即所得,而后者可以解析转义字符。

注意,字符串是不可变的,对字符串的操作只能返回一个新字符串,而不会改变原字符串并返回。

只有基于类型及其别名类型来可以作为常量的类型。常量的声明会用到关键字const。
单一常量声明一般由关键字const、常量名、常量类型、等号=和常量值组成。
下面是两个常量的说明:

const DEFAULT_IP string = “192.168.0.1”
const DEFAULT_PORT int = 9001

像这样多个常量同时申明还可以简写成:

const (
DEFAULT_IP string = “192.168.0.1”
DEFAULT_PORT int = 9001
)

  

go——基本类型的更多相关文章

  1. 【.net 深呼吸】细说CodeDom(5):类型成员

    前文中,老周已经厚着脸皮介绍了类型的声明,类型里面包含的自然就是类型成员了,故,顺着这个思路,今天咱们就了解一下如何向类型添加成员. 咱们都知道,常见的类型成员,比如字段.属性.方法.事件.表示代码成 ...

  2. 【.net 深呼吸】细说CodeDom(4):类型定义

    上一篇文章中说了命名空间,你猜猜接下来该说啥.是了,命名空间下面就是类型,知道了如何生成命名空间的定义代码,之后就该学会如何声明类型了. CLR的类型通常有这么几种:类.接口.结构.枚举.委托.是这么 ...

  3. opencv中Mat与IplImage,CVMat类型之间转换

    opencv中对图像的处理是最基本的操作,一般的图像类型为IplImage类型,但是当我们对图像进行处理的时候,多数都是对像素矩阵进行处理,所以这三个类型之间的转换会对我们的工作带来便利. Mat类型 ...

  4. [C#] async 的三大返回类型

    async 的三大返回类型 序 博主简单数了下自己发布过的异步文章,已经断断续续 8 篇了,这次我想以 async 的返回类型为例,单独谈谈. 异步方法具有三个可让开发人员选择的返回类型:Task&l ...

  5. C# - 值类型、引用类型&走出误区,容易错误的说法

    1. 值类型与引用类型小总结 1)对于引用类型的表达式(如一个变量),它的值是一个引用,而非对象. 2)引用就像URL,是允许你访问真实信息的一小片数据. 3)对于值类型的表达式,它的值是实际的数据. ...

  6. salesforce 零基础学习(六十二)获取sObject中类型为Picklist的field values(含record type)

    本篇引用以下三个链接: http://www.tgerm.com/2012/01/recordtype-specific-picklist-values.html?m=1 https://github ...

  7. Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示

    Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...

  8. ElasticSearch 5学习(9)——映射和分析(string类型废弃)

    在ElasticSearch中,存入文档的内容类似于传统数据每个字段一样,都会有一个指定的属性,为了能够把日期字段处理成日期,把数字字段处理成数字,把字符串字段处理成字符串值,Elasticsearc ...

  9. js:给定两个数组,如何判断他们的相对应下标的元素类型是一样的

    题目: 给Array对象原型上添加一个sameStructureAs方法,该方法接收一个任意类型的参数,要求返回当前数组与传入参数数组(假定是)相对应下标的元素类型是否一致. 假设已经写好了Array ...

  10. C++11特性——变量部分(using类型别名、constexpr常量表达式、auto类型推断、nullptr空指针等)

    #include <iostream> using namespace std; int main() { using cullptr = const unsigned long long ...

随机推荐

  1. Echarts中线状图的X轴坐标标签倾斜样式

    在echarts中应用线状图时可以展现很多的数据,而当数据量过多的时候,X轴的坐标就会显示不全,因为整个图形的宽度是一定的,X轴的全长是一定的 http://www.cnblogs.com/phpgc ...

  2. 【揭秘】什么是不对称秘钥和CA证书

    密钥交换简单的说就是利用非对称加密算法来加密对称密钥保证传输的安全性,之后用对称密钥来加密数据. ★方案1--单纯用"对称加密算法"的可行性 首先简单阐述一下,"单纯用对 ...

  3. 利用:header匹配所有标题做目录

    1.问题背景 查找到h1-h6,并遍历它们,打印出内容 2.实现源码 <!DOCTYPE html> <html> <head> <meta charset= ...

  4. tomocat解决乱码问题

    使用Tomcat进行JSP开发最头疼的莫过于中文乱码问题了,总结Tomcat乱码问题出现的原因必须明白以下几点: 1.Tomcat一般总是默认使用ISO-8859-1作为字符编码方式的.所以,除非你在 ...

  5. C++ 类模板三(类模版中的static关键字)

    //类模版中的static关键字 #include<iostream> using namespace std; /* 类模板本质上是c++编译器根据类型参数创建了不同的类, c++编译器 ...

  6. 如何用redis/memcache做Mysql缓存层

    方法一:直接用MysqlMysql有缓存,实现了类似的功能,如果需要缓存的东西很多,可以把缓存的内存设置大一点.这样的好处就是不用去控制缓存的失效,确保数据一致性. 方法二:启用用DAO框架的缓存比如 ...

  7. 当您尝试再次安装 SQL Server 时,SQL Server 2008年安装将会失败

    症状 当您尝试在一台服务器上安装 Microsoft SQL Server 2008年时,则安装将失败.当您尝试在同一台服务器上重新安装 SQL Server 2008年的相同副本时,此安装也将失败. ...

  8. Hibernate Tools插件的使用

            Hibernate Tools是由JBoss推出的一个Eclipse综合开发工具插件,该插件可以简化ORM框架Hibernate,以及JBoss Seam,EJB3等的开发工作.Hib ...

  9. 房间WIFI信号不好怎么办?——无线路由桥接(WDS)

    背景 1.无线路由在客厅,房间的WIFI信号很差,只有1-2格,虽说是100M的网速,但是从客厅到房间要经过3道墙!电脑的无线接收功能一般都很一般,网速不好理所当然. 2.弄一根网线从客厅连接起来很傻 ...

  10. jQuery左右选择框

    <!DOCTYPE html> <html> <head> <title>左右选择框</title> <style type=&quo ...