Java vs. C#

Primitive Type vs. Value Type


Java
 
Java has two types: 
  • primitive types and
  • reference types
All classes including arrays and interfaces are reference types. There are only eight(8) primitive types:
  • boolean
  • byte
  • short
  • char
  • int
  • long
  • float
  • double

C#
 
C# has two types: 
  • value types and
  • reference types
All classes including delegate, arrays and interfaces are reference types. Value types include simple types, enum types and struct types(15).
  • sbyte
  • byte
  • short
  • ushort
  • int
  • uint
  • long
  • ulong
  • float
  • double
  • bool
  • char
  • decimal
  • enum
  • structs