Within a programing language, a data type of an object determines what type of values an object can have and what operations can be performed on the object. Learn about the most common data types, including strings, numbers, Booleans, lists and arrays.
Programming uses a number of different data types. A data type determines what type of value an object can have and what operations can be performed.
One of the most widely used data types is a string. A string consists of one or more characters, which can include letters, numbers, and other types of characters. You can think of a string as plain text.
A string represents alphanumeric data. This means that a string can contain many different characters, but they are all considered as if they were text, even if the characters are numbers. A string can also contain spaces. This presents a bit of an issue. How are you going to distinguish between the value of a string and the actual code of the program? The solution is to mark the beginning and end of a string with a special character, typically a quote. For example, the following code is used to print text to the screen:
print 'Hello World!'
The use of quotes ensures that the text 'Hello World!' is recognized as a string and not as two separate words that may have some special meaning in the programming language. The use of quotes also makes it possible to use numeric characters as part of a string. For example, the following code is used to store a street address:
address = '123 Central Avenue'
Without the quotes, the numeric characters 123 would be interpreted as a number, but with the quotes, it is recognized as being part of a string that represents a street address.
Numeric Data Types
The second most important data type is numeric data. There are several different ones.
An integer is a numeric value without a decimal. Integers are whole numbers and can be positive or negative. Sometimes a distinction is made between short and long integers, referring to how much data storage is used for the number. A short integer is typically stored using 16 bits, which means you can store up to 2^16, or 65,536, unique values. For any number larger than that, you would need to use a long integer, which uses 32 bits or more.
A number with a decimal is referred to as a decimal, a float or a double. The terminology varies somewhat with the programming language being used. The term 'float' comes from floating point, which means you can control where the decimal point is located. The term 'double' refers to using double the amount of storage relative to a float. Working with numbers in code is a little bit like using a calculator. Here is an example of how numeric values are used in code, in this case using a multiplication character:
result = 3 * 117.89
The value stored in the 'result' would be 353.67.
The Boolean data type can only represent two values: true or false. Typically, a 1 is used to represent True, and a 0 is used to represent False. Consider the following example where a user inputs two values and the program determines whether the first one is smaller than the second one or not.
In this example the first value is in fact not smaller than the second one, and the program therefore results in a Boolean value of False. The Boolean type is the primary results of conditional statements, which are used to control workflow in program. For example, if a particular condition is true, then do this - if the condition is false, then do something else.
Composite Data Types
The data types covered so far are often referred to as primitive data types. A composite data type is obtained by combining more than one primitive data type. These are also referred to as data structures. Common examples of composite data types are lists and arrays.
A list contains elements of one particular data type. For example, a list could contain strings. An example would be the names of all players on a soccer team. Each name is a string, but when you organize all the names together, they form a list. A list is the simplest data structure.
For example, a list of strings could look like this:
('John', 'Paul', 'George', 'Ringo')
A list of numbers could look like this:
(67, 84, 92, 52, 81, 75)
Each element in a list is identified by a specific index. All elements in a list are ordered in a particular sequence. This sequence does not change unless you actively change elements or sort the sequence. Each element has an index, which tells you at what position in the sequence that element is located. Typically the index value of the first position is zero (0). In the example above, the number 67 is located at index position 0, and the number 81 is located as index position 4.
An array is a data type where the elements are identified by one or more indices. An array is similar to a list, but an array can have multiple dimensions. A one-dimensional array is the same as a list: a linear sequence of elements that are all of the same type.
In a two-dimensional array, the elements are organized in two dimensions, which you can think of as the rows and columns of a table. This type of array uses two indices: one for rows and one for columns. The unique combination of two index values represents a unique cell in the table. Each cell corresponds to an element, which can be a string, a number or some other data type. A two-dimensional array is called a matrix. A three-dimensional array can be represented by a cube and uses three indices. Arrays can have more dimensions, but they are more difficult to visualize.
Date and Time
Dates and times have their own data type to distinguish them from numeric data. There any many different ways to format dates and times. Some common ways to format dates are:
- YYYY-MM-DD, for example: 2012-04-01
- Month/Day/Year, for example: 4/1/2012
- Day of the week, Month and Day, Year, for example: Sunday, April 1, 2012
Some common ways to format time are:
- HH:MM:SS AM/PM, for example: 2:45:31 PM
- HH:MM:SS, for example: 14:45:31
Each programming language has some built-in tools to work with time - for example, to determine how long it took to carry out a particular calculation.
In an enumerated data type, values can only represent one of a limited number of predefined categories. For example, the four suits in a deck of playing cards are: club, diamond, heart and spade. If you are writing a program to create a card game, you would use a data type called 'suit,' and it can only have one of these four values.
Enumerated data types are not built into a programming language and have to be created by the programmer. For the example of the playing card game, you would have to write some code to create the 'suit' data type and the predefined values it can represent.
Within a programing language, a data type of an object determines what type of values it can have and what operations can be performed on the object. Widely used data types include string, numeric and Boolean data types. Composite data types include lists and arrays. Enumerated data types allow you to create a customized data type with a limited number of predefined categories.