SAP ABAP – 数据类型
SAP ABAP – 数据类型
在ABAP中编程时,我们需要使用各种变量来存储各种信息。变量只不过是用于存储值的保留内存位置。这意味着当你创建一个变量时,你会在内存中保留一些空间。您可能喜欢存储各种数据类型的信息,如字符、整数、浮点数等。操作系统根据变量的数据类型分配内存并决定可以在保留内存中存储什么。
基本数据类型
ABAP 为程序员提供了丰富的固定长度和可变长度数据类型。下表列出了 ABAP 基本数据类型 –
Type | 关键词 |
---|---|
Byte field | X |
Text field | C |
Integer | 一世 |
Floating point | F |
Packed number | 磷 |
Text string | 细绳 |
可以使用一个或多个名称修改某些字段和数字,如下所示 –
- 字节
- 数字
- 性格似的
下表显示了数据类型、将值存储在内存中需要多少内存,以及可以存储在此类变量中的最小值和最大值。
Type | 典型长度 | 典型范围 |
---|---|---|
X | 1 字节 | 任何字节值(00 到 FF) |
C | 1 个字符 | 1 至 65535 |
N (numeric text filed) | 1 个字符 | 1 至 65535 |
D (character-like date) | 8 个字符 | 8 个字符 |
T (character-like time) | 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 | 多变的 | 任何字母数字字符 |
XSTRING (byte string) | 多变的 | 任何字节值(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 |
Line or row type 内部表的行可以是基本类型、复杂类型或引用类型。 |
2 |
Key 指定一个字段或一组字段作为标识表行的内部表的键。键包含基本类型的字段。 |
3 |
Access method 描述 ABAP 程序如何访问单个表条目。 |
引用类型用于引用类、接口和运行时数据项的实例。ABAP OOP 运行时类型服务 (RTTS) 支持在运行时声明数据项。