5.2. Primitive Data Types in Java: short

Java is a strongly typed programming language, which means that each variable must be declared with a specific data type. The primitive data types in Java are the most basic and serve as building blocks for more complex data types. Among the primitive types, we have short, which is the focus of this chapter.

Understanding the Primitive Type short

The short type is an integral data type that occupies 16 bits (2 bytes) of memory. In Java, it is used to store small integer values ​​that do not require the width of an int (which takes up 32 bits). short can store values ​​in the range -32,768 to 32,767. This is determined by the number of bits and the fact that it is a signed data type, that is, it can represent both positive and negative numbers.

When to Use the Short Type

Using the short type can be ideal in situations where saving memory is crucial and we know that the variable value will never exceed the range allowed for a short. For example, when working with a large array of integers where the values ​​are within the range of a short, you can cut memory consumption in half by using the short instead of int.

However, it is important to note that in modern Java programming practice, the use of short is relatively rare. This is due to the fact that most modern computer architectures are optimized to work with 32-bit or 64-bit data sizes, and using a smaller data type such as short may not result in significant performance improvements.

Declaration and Initialization of Short Variables

To declare a variable of type short, we simply use the keyword short followed by the variable name:


short numberSmall;

We can also initialize a variable short at declaration time:


short initializednumber = 1234;

Operations with Variables of Type short

Variables of type short can be used in arithmetic operations, just like other numeric types in Java. However, it is important to be aware of the type promotion that occurs during arithmetic operations. When we operate a short with other numeric types, the result is promoted to the larger type. For example, when adding a short and a int, the result will be a int.


short a = 10;
int b = 20;
int result = a + b; // result is of type int

Special care for the short type

Due to its small size, care must be taken with the possibility of overflow or underflow. An overflow occurs when we try to store a value that is greater than the maximum allowed for the data type, while an underflow occurs when we try to store a value that is smaller than the minimum allowed. In both cases, the result is a distortion of the real value, which can lead to logical errors in the program.

Conversions and Casts with shorts

In some situations, it may be necessary to convert values ​​from one type to another. In the case of conversions from a larger type to short, it is necessary to perform an explicit cast, as this is a conversion that can result in loss of information:


int bigNumber = 32767;
short numberConverted = (short) numberLarge;

On the other hand, the conversion of a short to a longer type is performed automatically by Java, as there is no risk of losing information.

Practical example with short

Let's consider a practical example where the short type could be applied. Imagine a school management system where each room has a limited number of students. If we know that no room will have more than 32,767 students (which is a pretty safe assumption), we could use the short type to store the number of students in each room:


short numberOfStudentsSala1 = 30;
short numberOfStudentsSala2 = 25;
// ...

Although the example above is simplified, it illustrates a situation where the use of a short is appropriate and can help save memory.

Conclusion

The short type is one of the primitive data types in Java that allows memory savings in specific situations. Although its use is less common than other primitive data types, such as int and long, it is important to understand how and when to use it. When working with small numerical values ​​and aware of their limitations, short can be an efficient choice for optimizing resource usage in a Java program.

Now answer the exercise about the content:

_Which of the following statements about the primitive data type `short` in Java is correct?

You are right! Congratulations, now go to the next page

You missed! Try again.

Article image Primitive Data Types in Java: int

Next page of the Free Ebook:

24Primitive Data Types in Java: int

6 minutes

Obtenez votre certificat pour ce cours gratuitement ! en téléchargeant lapplication Cursa et en lisant lebook qui sy trouve. Disponible sur Google Play ou App Store !

Get it on Google Play Get it on App Store

+ 6.5 million
students

Free and Valid
Certificate with QR Code

48 thousand free
exercises

4.8/5 rating in
app stores

Free courses in
video, audio and text