Not a Student?
Go to AP Central for resources for teachers, administrators, and coordinators.
AP Computer Science A
About the Course
Do you want to cure cancer? Design a video game? Or maybe build interactive art? AP Computer Science A explores how to use, build, and work with the technologies of tomorrow to help answer some of the biggest questions of today. In this course, you’ll design and implement computer programs using a subset of the Java programming language that can be used to develop algorithms, data structures, and solve problems.
Skills You'll Learn
Designing a program, developing the algorithms it needs, and writing code to implement them
Testing program code and correcting errors
Documenting and explaining how program code works
Equivalency and Prerequisites
College Course Equivalent
A one-semester, introductory college course in computer science
Recommended Prerequisites
High school courses in English and algebra, and familiarity with functions and the concepts found in the uses of function notation
Exam Date
Fri, May 15, 2026
12 PM Local
AP Computer Science A Exam
This is the regularly scheduled date for the AP Computer Science A Exam.
Your Future Starts Now
AP can lead to a wide range of careers and college majors.
About the Units
The course content outlined below is organized into commonly taught units of study that provide one possible sequence for the course. Your teacher may choose to organize the course content differently based on local priorities and preferences.
Course Content
Unit 1: Using Objects and Methods
You’ll learn the fundamentals of Java, a programming language, and other foundational concepts for coding. You’ll explore reference data as a way to represent real-world objects in a digital world and discover methods to perform more complex operations.
Topics may include:
- Using primitive data types including int, double, and Boolean
- Evaluating arithmetic expressions in program code
- Using assignment operators to produce a value
- Knowing how variables and operators are sequenced and combined in an expression to create a result
- Using comments to describe the functionality of code
- Using objects and classes to describe instances, attributes, and behaviors
- Creating objects by calling constructors with and without parameters
- Defining an object’s behavior using methods, including static and Math class
- Calling non-static void methods with and without parameters
- Using String objects and methods
- Using application program interfaces (APIs) and libraries
On The Exam
15%–25% of exam score
Unit 2: Selection and Iteration
You’ll delve into the building blocks of algorithms and focus on using conditional statements to solve problems and control results. You’ll learn about iteration, another building block of algorithms that are for repetition.
Topics may include:
- Finding Boolean values with expressions involving relational operators
- Using conditional statements to execute different statements based on input values
- Building on conditional statements to create multiple possible outcomes
- Creating the same value using equivalent Boolean expressions
- Creating a loop to run an expression repeatedly until certain conditions are met
- Implementing standard arithmetic-based and String-based algorithms
- Representing iterative processes in code using for and while loops
- Nesting loop and iteration statements
- Informally analyzing run-times
On The Exam
25%–35% of exam score
Unit 3: Class Creation
You’ll explore how real-world interactions can be expressed digitally by organizing behaviors and attributes into classes.
Topics may include:
- Designing a class, including whether attributes are public or private
- Setting an object’s attributes using constructors
- Defining behaviors of an object using non-void, void, and static methods
- Breaking problems into smaller parts by creating methods to solve individual subproblems
On The Exam
10%–18% of exam score
Unit 4: Data Collections
You’ll learn techniques and standard algorithms to work with collections of related data, known as data structures. You’ll delve deeper into data sets, exploring array, ArrayList of objects, and 2D arrays.
Topics may include:
- Considering intellectual property and ethical concerns in programming
- Considering ethical issues around data collections
- Using data sets
- Representing multiple related items as array objects
- Traversing an array by accessing the elements using iteration statements
- Implementing standard algorithms that utilize array traversals to perform functions
- Utilizing class libraries, including Integer and Double
- Representing collections of related object reference data using
ArrayListobjects - Traversing an
ArrayListby accessing the elements using iteration statements - Implementing standard algorithms that utilize
ArrayListtraversals to perform functions - Searching and sorting using standard algorithms
- Representing collections of data as arrays of arrays, or 2D arrays
- Traversing a 2D array by accessing the elements using nested iteration statements
- Executing recursive methods
- Searching and sorting using binary search and merge sort algorithms
On The Exam
30%–40% of exam score
Credit and Placement
Search AP Credit Policies
Find colleges that grant credit and/or placement for AP Exam scores in this and other AP courses.
Course Resources
Video
Why AP Computer Science A Is for You
Hear from students who took this course and find out how it can benefit you as you prepare to own your future, your way.
- 59:12
Link
Why Take AP Computer Science A?
Learn more about how AP computer science courses can launch you into limitless careers.
- Go to College Board Blog
Link
The Difference Between AP Computer Science Principles and AP Computer Science A
Learn the similarities and differences between these two courses and exams.
- Go to College Board Blog
Link
AP Classroom Resources
Once you join your AP class section online, you’ll be able to access videos, any assignments from your teacher, and your assignment results in AP Classroom. Sign in to access them.
- Go to AP Classroom
Article
AP Computer Science A Lab Requirements
Learn about the required laboratory component included in AP Computer Science A.
Download
AP Computer Science A Java Quick Reference
The Java Quick Reference is included in the Bluebook testing app and lists the accessible methods from the Java library that may be included on the exam. For the AP Computer Science A Exam, schools can print this reference information and provide it to students on exam day. It is also available in Bluebook.
Download
AP Computer Science A Course and Exam Description
This is the core document for the course. It clearly lays out the course content and describes the exam and AP Program in general.
- 0 bytes
Download
AP Computer Science A Course and Exam Description Clarifications and Corrections
This document provides teachers with clarifications and/or corrections for the AP Computer Science A Course and Exam Description.
More About Your Course
Article
AP College and Career Connections: Computer Science
Discover college scholarships and other opportunities in the field.
Link
ACM (Association for Computing Machinery)
ACM brings together computing educators, researchers, and professionals to inspire dialogue, share resources, and address the challenges of the field.
- Go to ACM (Association for Computing Machinery)
Link
ACSL (American Computer Science League)
ACSL organizes computer science contests and computer programming contests for elementary, junior, and senior high school students.
- Go to ACSL (American Computer Science League)
Link
IEEE
IEEE is the largest technical professional organization in the world that is dedicated to advancing technology for the benefit of humanity.
- Go to IEEE