Computer Science / Java

AP Computer Science A

Build your confidence in Java, from your first method to algorithms and data collections. Follow the official AP course framework, one topic at a time.

Your course roadmap

01 Using Objects and Methods15 topics
  1. 1.1
    Introduction to Algorithms, Programming, and Compilers
  2. 1.2
    Variables and Data Types
  3. 1.3
    Expressions and Output
  4. 1.4
    Assignment Statements and Input
  5. 1.5
    Casting and Range of Variables
  6. 1.6
    Compound Assignment Operators
  7. 1.7
    Application Program Interface (API) and Libraries
  8. 1.8
    Documentation with Comments
  9. 1.9
    Method Signatures
  10. 1.10
    Calling Class Methods
  11. 1.11
    Math Class
  12. 1.12
    Objects: Instances of Classes
  13. 1.13
    Object Creation and Storage (Instantiation)
  14. 1.14
    Calling Instance Methods
  15. 1.15
    String Manipulation
02 Selection and Iteration12 topics
  1. 2.1
    Algorithms with Selection and Repetition
  2. 2.2
    Boolean Expressions
  3. 2.3
    if Statements
  4. 2.4
    Nested if Statements
  5. 2.5
    Compound Boolean Expressions
  6. 2.6
    Comparing Boolean Expressions
  7. 2.7
    while Loops
  8. 2.8
    for Loops
  9. 2.9
    Implementing Selection and Iteration Algorithms
  10. 2.10
    Implementing String Algorithms
  11. 2.11
    Nested Iteration
  12. 2.12
    Informal Run-Time Analysis
03 Class Creation9 topics
  1. 3.1
    Abstraction and Program Design
  2. 3.2
    Impact of Program Design
  3. 3.3
    Anatomy of a Class
  4. 3.4
    Constructors
  5. 3.5
    Methods: How to Write Them
  6. 3.6
    Methods: Passing and Returning References of an Object
  7. 3.7
    Class Variables and Methods
  8. 3.8
    Scope and Access
  9. 3.9
    this Keyword
04 Data Collections17 topics
  1. 4.1
    Ethical and Social Issues Around Data Collection
  2. 4.2
    Introduction to Using Data Sets
  3. 4.3
    Array Creation and Access
  4. 4.4
    Array Traversals
  5. 4.5
    Implementing Array Algorithms
  6. 4.6
    Using Text Files
  7. 4.7
    Wrapper Classes
  8. 4.8
    ArrayList Methods
  9. 4.9
    ArrayList Traversals
  10. 4.10
    Implementing ArrayList Algorithms
  11. 4.11
    2D Array Creation and Access
  12. 4.12
    2D Array Traversals
  13. 4.13
    Implementing 2D Array Algorithms
  14. 4.14
    Searching Algorithms
  15. 4.15
    Sorting Algorithms
  16. 4.16
    Recursion
  17. 4.17
    Recursive Searching and Sorting