SAP ABAP 数据类型
当在ABAP中编程时,我们需要使用各种变量来存储各种信息。 变量只是保留值的存储位置。 这意味着,当您创建一个变量,你在内存中保留一些空间。 您可能希望存储各种数据类型的信息,如字符,整数,浮点等。基于变量的数据类型,操作系统分配内存并决定在保留内存中可以存储的内容。
基本数据类型
ABAP为程序员提供了丰富的固定长度和可变长度数据类型。 下表列出了ABAP基本数据类型 –
类型 | 关键词 |
---|---|
字节字段 | X |
文本域 | C |
Integer | I |
浮点 | F |
打包数量 | P |
文本字符串 | STRING |
一些字段和数字可以使用一个或多个名称来修改,如下所示:
- byte
- numeric
- character-like
下表显示数据类型,将值存储在内存中需要多少内存,以及可以存储在此类变量中的最小值和最大值。
类型 | 典型长度 | 典型范围 |
---|---|---|
X | 1字节 | 任何字节值(00到FF) |
C | 1个字符 | 1〜65535 |
N(数字文本字段) | 1个字符 | 1〜65535 |
D(类似字符的日期) | 8个字符 | 8个字符 |
T(字符型时间) | 6个字符 | 6个字符 |
I | 4字节 | -2147483648至2147483647 |
F | 8字节 | 2.2250738585072014E-308至1.7976931348623157E + 308正或负 |
P | 8字节 | [-10 ^(2len -1)+1]到[+ 10 ^(2len -1)1](其中len =固定长度) |
STRING | Variable | 任何字母数字字符 |
XSTRING(字节字符串) | Variable | 任何字节值(00到FF) |
例子
REPORT YR_SEP_12.
DATA text_line TYPE C LENGTH 40.
text_line = 'A Chapter on Data Types'.
Write text_line.
DATA text_string TYPE STRING.
text_string = 'A Program in ABAP'.
Write / text_string.
DATA d_date TYPE D.
d_date = SY-DATUM.
Write / d_date.
在此示例中,我们有一个具有预定义长度40的C类型的字符串。STRING是可用于任何长度可变的字符串(文本字符串)的数据类型。 类型STRING数据对象通常应用于固定长度不重要的字符内容。
上面的代码产生以下输出:
A Chapter on Data Types
A Program in ABAP
12092015
DATE类型用于存储日期信息,并且可以存储八位数字,如上所示。
复杂和参考类型
复杂类型分为结构类型和表类型。 在结构类型中,基本类型和结构(即,嵌入在结构中的结构)被分组在一起。 你可以只考虑基本类型的分组。 但是你必须意识到结构的嵌套的可用性。
当基本类型被分组在一起时,数据项可以作为分组数据项被访问或者可以访问各个基本类型数据项(结构字段)。 表类型在其他编程语言中更好地称为数组。 数组可以是简单数组或结构数组。 在ABAP中,数组被称为内部表,并且与其他编程语言相比,它们可以以许多方式被声明和操作。 下表显示了表示内部表的参数。
S.No。 | 参数& 描述 |
---|---|
1 | 线或行类型内部表的行可以是基本类型,复杂类型或引用类型。 |
2 | 键将字段或一组字段指定为标识表行的内部表的键。 键包含基本类型的字段。 |
3 | 存取方法描述ABAP程序如何访问单个表条目。 |
引用类型用于引用类,接口和运行时数据项的实例。 ABAP OOP运行时类型服务(RTTS)允许在运行时声明数据项。