024-go 数据类型介绍
2018-02-25 20:05
246 查看
1. 数据类型
在我们的世界,充满了形形色色的人、事和物。要想在计算机中描述这个多彩的世界,太复杂了。比如照片,是如何呈现在你的电脑屏幕上的?你现在正在看的这篇博客,又是如何呈现在电脑屏幕上的?这一切都很神奇,不是吗?
所以有一切,都是通过执行计算机程序,将 0 和 1 这样的 2 进制数字,进行一定的运算,再解释成照片,解释成一篇博客,解释成你所看到的一切。
在过去还没有高级语言的时候,人们是通过编写汇编程序,甚至是机器码来编写程序,要想表示现实中复杂的概念非常麻烦。直到高级语言的发明,人们将 0 和 1 组合成的二进制数据,按照固定的位数进行抽象,形成了数据类型的概念。
比如 8 bit 2 进制数据,可以抽象成一个能表示 0 ~ 255 范围的整数,也可以抽象成 -128 ~ 127 范围的整数,也可以表示 ascii 码,还可以表示图像的像素值……对于 cpu 来说,它根本不知道这 8 bit 表示的是什么,cpu 只知道运算~~~其它的它什么也不懂。
所以说,数据类型是人类对固定长度的 2 进制数据进行的抽象和总结。高级语言的发明,提炼出了最基础的数据类型。以典型的 C 语言来说,就总结出了 char 类型、short 类型、int 类型、 long 类型、float 类型、double 类型等等。
对于 char 类型来说,它占用了 8 bit 宽度。这个类型的数据可以表示 -128 ~ 127 的整数,也可以表示 ascii 字符,当然,你也可以用它来描述像素值……
无论现实生活中多么复杂的事物,都可以用基础数据类型组合而成。比如我想描述一个『立方体』这样的东西,它就具备长、宽和高三个特征,这三个特征可以使用基础数据类型的整型来组合表示。
再比如,我想描述一个人,我们可以使用姓名,年龄,电话,学历,住址等等这些特征了描述他,姓名无外乎就是使用 ascii 码来组合(假设是英文的名字的话);年龄呢,使用整型来表示;电话,也可以使用 ascii 码来组合;学历可以使用数字,住址也可以使用 ascii 码。
2. go 里的数据类型
go 语言里,内建的数据类型比 c 语言更加丰富。在 go 里数据类型被分成了四大类:基础数据类型(basic types)
数字(numbers)
布尔(booleans)
字符串(strings)
复合(组合)数据类型(aggregate types)
数组(arrays)
结构体(structs)
引用数据类型(reference types)
指针(pointers)
切片(slices)
字典(maps)
函数(functions)
通道(channels)
接口数据类型(interface types)
学习一门语言,最重要事情之一就是掌握这门语言内建的各种数据类型的特点,并灵活应用它们。
3. 总结
了解 go 里常见的数据类型,知道有哪些回忆前面你使用过了哪些数据类型
相关文章推荐
- 【Go学习笔记】go语言中的基本数据类型和包的介绍(一)
- Json格式和数据类型 介绍
- Go学习笔记之基础数据类型
- ORACLE中的各种数据类型详细的介绍
- DB2日期时间型数据类型介绍
- Delphi数据类型详细介绍
- 应用程序框架实战三十四:数据传输对象(DTO)介绍及各类型实体比较(转)
- 数据字典(选项)管理 的具体使用方法介绍 - 以审批流程类别管理为例(工作流类型管理)
- js介绍-js中的变量和数据类型及相互转换-运算符及表达式
- python基础教程之基本内置数据类型介绍
- Redis3.0数据类型介绍以及操作
- 初学java--数据类型介绍
- android数据类型之间转换(系统介绍)
- go学习(二)——基本数据类型和基本语法
- Go语言学习笔记 --- 常量、变量、批量定义与声明、数据类型、类型别名、类型转换
- PostgreSQL 数据类型介绍(二)
- ORACLE中的各种数据类型详细的介绍
- PHP学习笔记(三):数据类型转换与常量介绍
- 以太坊笔记 智能合约 Solidity 的常用数据类型介绍