Data types:
Data types is defined as, it is an attribute that tells to the compiler or interpreter about the types of values.
In other words we can say that it defines, which type of value can be stored in Go variable.
In Go, data types are divided into four major category.
1. Basic types (number, string, bool)
2. Aggregate types (array, structs)
3. Reference types (pointer, slice, map, channels)
4. Interface types
Go basic types:
Following are the go basic types.
1. Number
2. String
3. Boolean
1. Number:
It tells to the compiler that data is in integer type (like 20, 2.30 etc). Number further divided into different category.
1.1. integer
1.2. float
1.3. complex
1.1. Integer data type:
Integer data type has different following types.
1.1.1. int - It stores both 32 and 64 bit signed integer, A 32 bit system allocate 32 bit of memory and a 64 bit system allocate 64 bit of memory. Hence 32bit system can store -2147483648 to 2147483647 and 64bit system can store -9223372036854775808 to 9223372036854775807
1.1.2. uint - It stores same as int, uint stores 32 or 64 bit unsigned integer
1.1.3. int8 - System allocate 8 bit of memory to store signed integer, hence it can store -128 to 127
1.1.4. uint8 - Same as int8, uint8 store unsigned integer, it can store value between 0 to 255
1.1.5. int16 - System allocate 16 bit of memory to store signed integer, hence it can store -32768 to 32767
1.1.6. uint16 - Same as int16, uint16 store unsigned integer, it can store value between 0 to 65535
1.1.7. int32 - System allocate 32 bit of memory to store signed integer, hence it can store -2147483648 to 2147483647
1.1.8. uint32 - Same as int32, uint32 store unsigned integer, it can store value between 0 to 4294967295
1.1.9. int64 - System allocate 64 bit of memory to store signed integer, hence it can store -9223372036854775808 to 9223372036854775807
1.1.10. uint64 - Same as int64, uint64 store unsigned integer, it can store value between 0 to 18446744073709551615
1.1.11. uintptr - It is an integer type that is large enough to hold the bit pattern of any pointer.
1.2. Float data type:
Float data types are those types which ensure the number with decimal (like 1.20, 10.00).
1.2.1. float32 - System allocate 32 bit of memory to store float value, hence it can store values between -3.4E+38 to +3.4E+38
1.2.2. float64 - System allocate 64 bit of memory to store float value, hence it can store values between -1.7E+308 to +1.7E+308
1.2.3. complex64 - complex64 has float32 as real part and float32 as imaginary part
1.2.4. complex128 - complex128 has float64 as real part and float64 as imaginary part
2. String:
It defines for either character or text values. it store string by default in UTF-8, string should be encapsulated in double quote. Its default value is empty string.
3. Boolean:
Boolean data types describe only two values either false or true, its default value is false.
Note: Further types will discuss in another chapter.
Comments
Post a Comment