数据类型是和数据结构密切相关的一个概念,它最早是出现在高级程序语言设计语言中,用于刻画程序中操作对象的特性。在用高级语言编写的程序中,每个变量、常量或者表达式都有一个所属的确定的数据类型。类型显示或隐含的规定了在程序执行期间变量或者表达式所有可能的取值,以及在这些值上允许进行操作。因此,数据类型是一个值的集合与定义在这个值集上的一组操作的总称。
在高级程序设计语言中,数据类型可以分为两类:一类是原子类型,另一类型是结构类型。原子类型的值是是不可以分解的,如Java语言中的整形、字符型、浮点型等基本类型,分别用int、char、float标识。而结构类型的值是由若干分量按照某种结构组成的,因此可以分解的,并且它的分量可以使非结构的,也可以是结构的。例如:数组的值由若干分量组成,每个分量可以使整数,也可以是数组等。
在某种意义上,数据结构可被看成是一组具有相同结构的值,而数据类型可以被看成是由一种数据结构和定义在其上的一组操作所组成的。