Skip to the content.
Intro Primitive Types Reference Types Stack and Heap Code Example Quiz

Unit 1 - Primitive Types

CSA-Prep

Primitive Data Types

A primitive data type specifies the size and type of information. Primitive types are the simplest type of variables in Java. They simply store a small amount of data, according to the type. They are not associated with a class.

The 3 Primitive Data Types for College Board

There are eight primitive data types in Java, but only these 3 are used in AP CSA:

Data Type Description
int Stores whole numbers from -2,147,483,648 to 2,147,483,647
double Stores decimal numbers. Sufficient for storing 15 decimal digits
boolean Stores true or false values

To declare a variable, you write: Type VariableName = Value;

For example: int count = 0;

Variable Terms and Conventions

These are important items to remember with regards to Java and the College Board.

  • A variable name is often referred to as the variable identifier in Java.
  • A variable name follows camel case conventions in Java (e.g., firstName).
  • A class name, which is a Data Type, follows Pascal case (e.g., BankAccount).

The 8 Primitive Data Types

Here is the complete list of primitive types in Java:

  • byte: An 8-bit signed two’s complement integer.
  • short: A 16-bit signed two’s complement integer.
  • int: A 32-bit signed two’s complement integer.
  • long: A 64-bit signed two’s complement integer.
  • float: A single-precision 32-bit IEEE 754 floating point.
  • double: A double-precision 64-bit IEEE 754 floating point.
  • boolean: Stores either true or false.
  • char: Stores a single 16-bit Unicode character.

Popcorn Hack: Greatest Value Terms

Primitive Data types have constraints The program shows the constraints of Integers and Doubles. Define the following terms…

  1. Constraints:
    • Constraints are conditions or limits that must be met or satisfied in a particular context. In programming, constraints often refer to rules or restrictions on data (e.g., a maximum value, type of data, or range) that ensure the correctness or validity of operations.
  2. Overflow:
    • Overflow occurs when a value exceeds the maximum limit that can be stored in a given data type or memory space. For example, if a program tries to store a number larger than the maximum value allowed by an integer data type, an overflow error can occur, often resulting in unexpected behavior or incorrect calculations.
  3. Underflow:
    • Underflow is the opposite of overflow and occurs when a value is too small to be represented within the allowed range of a data type or memory space. This often happens in floating-point arithmetic when a calculation results in a number closer to zero than the smallest possible non-zero value that the data type can represent.
public class GreatestValue {
    public static void main(String[] args) {
        System.out.println("Max Integer: " + Integer.MAX_VALUE);
        System.out.println("Min Integer: " + Integer.MIN_VALUE);
        System.out.println("Max Double: " + Double.MAX_VALUE);
        System.out.println("Min Double: " + Double.MIN_VALUE);

        // Integer Show Overflow
        int i = Integer.MAX_VALUE;
        i++;
        System.out.println("Integer Max + 1, Overflow: " + i);

        // Integer Show Underflow
        int j = Integer.MIN_VALUE;
        j--;
        System.out.println("Integer Min - 1, Underflow: " + j);

        // Integer Max + Min
        int k = Integer.MAX_VALUE + Integer.MIN_VALUE;
        System.out.println("Integer Max + Min: " + k);

    }
}
GreatestValue.main(null);
Max Integer: 2147483647
Min Integer: -2147483648
Max Double: 1.7976931348623157E308
Min Double: 4.9E-324
Integer Max + 1, Overflow: -2147483648
Integer Min - 1, Underflow: 2147483647
Integer Max + Min: -1

Popcorn Hack: Fill in Data Type

The code below is broken….

  • Fill in the blank, replace the underbars with the correct type.
  • Output the contents to the Jupyter Terminal
int zero = 0; //Whole number
double pi = 3.14159; //Decimal values. Floating point numbers.
boolean iAmTakingCSA = true; //Stores a true of false binary value
char myProjectedGrad = 'A'; //Single character
String iLoveCodeCodeCoding = "Yes"; //String of characters