next up previous
Next: Numeric types Up: The Java type model Previous: The Java type model

Integral types

Java defines some operators only for integral types. Note that the shift operators do not demand that both operands be of the same type.

Primitive types[5]:
SET integralType  = [byteType, shortType, intType, longType, charType];
SET integrl2Type  = integralType;

  lshiftOp, rshiftOp, urshiftOp(integralType,integrl2Type):integralType;
  andOp, orOp, exorOp(integralType,integralType):integralType;

  llInd:    lshiftOp;
  ggInd:    rshiftOp;
  gggInd:   urshiftOp;
  tildeInd: complOp;
  ampInd:   andOp;
  barInd:   orOp;
  upInd:    exorOp;

  (byteType): charType;
  (byteType): shortType;
  (shortType): intType;
  (intType): longType;
  (charType): intType;
This macro is defined in definitions 5, 6, 7, and 8.
This macro is invoked in definition 4.