Language |
Value type |
Reference type |
C++[3] |
booleans, characters, integer numbers, floating-point numbers, arrays, classes (including strings, lists, dictionaries, sets, stacks, queues), enumerations |
alias, pointers |
Java[4] |
booleans, characters, integer numbers, floating-point numbers |
arrays, classes (including immutable strings, lists, dictionaries, sets, stacks, queues, enumerations), interfaces, null pointer |
C#[5] |
structures (including booleans, characters, integer numbers, floating-point numbers, fixed-point numbers, lists, dictionaries, sets, stacks, queues, optionals), enumerations |
classes (including immutable strings, arrays, tuples, lists, dictionaries, sets, stacks, queues), interfaces, pointers |
Swift[6][7] |
structures (including booleans, characters, integer numbers, floating-point numbers, fixed-point numbers, immutable strings, tuples, lists, dictionaries, sets, stacks, queues), enumerations (including optionals) |
functions, classes, interfaces |
Python[8] |
|
classes (including immutable booleans, immutable integer numbers, immutable floating-point numbers, immutable complex numbers, immutable strings, byte strings, immutable byte strings, immutable tuples, immutable ranges, immutable memory views, lists, dictionaries, sets, immutable sets, null pointer) |
JavaScript[9] |
|
immutable booleans, immutable floating-point numbers, immutable symbols, immutable strings, undefined, prototypes (including lists, null pointer) |
OCaml[10][11] |
immutable characters, immutable integer numbers, immutable floating-point numbers, immutable tuples, immutable enumerations (including immutable units, immutable booleans, immutable lists, immutable optionals), immutable exceptions, immutable formatting strings |
arrays, immutable strings, byte strings, dictionaries (including pointers) |