Rational Developer for System z
Enterprise COBOL for z/OS, Version 4.1, Programming Guide


Coding interoperable data types in COBOL and Java

Your COBOL program can use only certain data types when communicating with Java.

Table 1. Interoperable data types in COBOL and Java
Primitive Java data type Corresponding COBOL data type
boolean1 PIC X followed by exactly two condition-names of this form:
level-number data-name PIC X.
88           data-name-false value X'00'.
88           data-name-true  value X'01' through X'FF'.
byte1 Single-byte alphanumeric: PIC X or PIC A
short USAGE BINARY, COMP, COMP-4, or COMP-5, with PICTURE clause of the form S9(n), where 1<=n<=4
int USAGE BINARY, COMP, COMP-4, or COMP-5, with PICTURE clause of the form S9(n), where 5<=n<=9
long USAGE BINARY, COMP, COMP-4, or COMP-5, with PICTURE clause of the form S9(n), where 10<=n<=18
float2 USAGE COMP-1
double2 USAGE COMP-2
char Single-character elementary national: PIC N USAGE NATIONAL. (Cannot be a national group.)
class types (object references) USAGE OBJECT REFERENCE class-name
  1. You must distinguish boolean from byte, because they each correspond to PIC X. PIC X is interpreted as boolean only when you define an argument or a parameter with the two condition-names as shown. Otherwise, a PIC X data item is interpreted as the Java byte type.
  2. Java floating-point data is represented in IEEE floating point. Enterprise COBOL, however, uses hexadecimal floating-point representation. When you pass floating-point arguments by using an INVOKE statement or you receive floating-point data from a Java method, the arguments and data are automatically converted as needed.

Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)