Practice Dojo
AP Computer Science A practice
Free, original practice questions for the AP Computer Science A exam, written to the College Board Course and Exam Description.
Start practicing →
720multiple-choice questions
4units, 3 difficulty levels each
20free-response questions
How the practice works
Each unit has three multiple-choice sets. White belt covers core terms and foundational ideas. Regular is set at exam level, with concept checks and applications. Black belt has harder, multi-step questions. After each answer you get an explanation, plus a "Still don't get it?" walkthrough with the key idea, a worked solution, a short practice problem and the most common wrong answer.
Free-response questions come with point-by-point scoring rubrics in the style of College Board scoring guidelines, model answers that earn every point, and walkthroughs for each part.
No account is needed. Your progress is saved in your own browser.
Units and topics
Unit 1: Using Objects and Methods
15 to 25% of the exam · 180 multiple-choice questions · 5 free-response questions
- 1.1 Introduction to Algorithms, Programming, and Compilers
- 1.2 Variables and Data Types
- 1.3 Expressions and Output
- 1.4 Assignment Statements and Input
- 1.5 Casting and Range of Variables
- 1.6 Compound Assignment Operators
- 1.7 Application Program Interface (API) and Libraries
- 1.8 Documentation with Comments
- 1.9 Method Signatures
- 1.10 Calling Class Methods
- 1.11 Math Class
- 1.12 Objects: Instances of Classes
- 1.13 Object Creation and Storage (Instantiation)
- 1.14 Calling Instance Methods
- 1.15 String Manipulation
Unit 2: Selection and Iteration
25 to 35% of the exam · 180 multiple-choice questions · 5 free-response questions
- 2.1 Algorithms with Selection and Repetition
- 2.2 Boolean Expressions
- 2.3 if Statements
- 2.4 Nested if Statements
- 2.5 Compound Boolean Expressions
- 2.6 Comparing Boolean Expressions
- 2.7 while Loops
- 2.8 for Loops
- 2.9 Implementing Selection and Iteration Algorithms
- 2.10 Implementing String Algorithms
- 2.11 Nested Iteration
- 2.12 Informal Run-Time Analysis
Unit 3: Class Creation
10 to 18% of the exam · 180 multiple-choice questions · 5 free-response questions
- 3.1 Abstraction and Program Design
- 3.2 Impact of Program Design
- 3.3 Anatomy of a Class
- 3.4 Constructors
- 3.5 Methods: How to Write Them
- 3.6 Methods: Passing and Returning References of an Object
- 3.7 Class Variables and Methods
- 3.8 Scope and Access
- 3.9 this Keyword
Unit 4: Data Collections
30 to 40% of the exam · 180 multiple-choice questions · 5 free-response questions
- 4.1 Ethical and Social Issues Around Data Collection
- 4.2 Introduction to Using Data Sets
- 4.3 Array Creation and Access
- 4.4 Array Traversals
- 4.5 Implementing Array Algorithms
- 4.6 Using Text Files
- 4.7 Wrapper Classes
- 4.8 ArrayList Methods
- 4.9 ArrayList Traversals
- 4.10 Implementing ArrayList Algorithms
- 4.11 2D Array Creation and Access
- 4.12 2D Array Traversals
- 4.13 Implementing 2D Array Algorithms
- 4.14 Searching Algorithms
- 4.15 Sorting Algorithms
- 4.16 Recursion
- 4.17 Recursive Searching and Sorting
Start practicing →