Please enable JavaScript to use CodeHS

Outline


1. Networks and the Internet
1.1 Intro to the Internet
Video 1.1.1 Welcome to the Internet
Quiz 1.1.2 Welcome to the Internet Quiz
Free Response 1.1.3 The Internet and You
1.2 Internet Hardware
Video 1.2.1 Hardware of the Internet
Quiz 1.2.2 Internet Hardware Quiz
Connection 1.2.3 The Internet is in the Ocean
1.3 Internet Addresses
Video 1.3.1 Internet Addresses
Quiz 1.3.2 Internet Addresses Quiz
Free Response 1.3.3 The Need for Addresses
Quiz 1.3.4 4-bit Addresses
Free Response 1.3.5 IPv4 vs IPv6
1.4 DNS
Video 1.4.1 DNS
Quiz 1.4.2 DNS Quiz
Connection 1.4.3 How Does DNS Work?
Free Response 1.4.4 How Does DNS Work?
Badge 1.4.5 DNS Badge
1.5 Routing
Video 1.5.1 Routing
Quiz 1.5.2 Routing Quiz
Free Response 1.5.3 Redundancy
Connection 1.5.4 Route Tracing
1.6 Packets and Protocols
Video 1.6.1 Packets and Protocols
Quiz 1.6.2 Packets and Protocols Quiz
Resource 1.6.3 Passing Notes
Connection 1.6.4 How the Internet Works
Free Response 1.6.5 The Story of the Internet
1.7 The Impact of the Internet
Video 1.7.1 The Impact of the Internet
Quiz 1.7.2 The Impact of the Internet Quiz
Connection 1.7.3 What is the Digital Divide?
Free Response 1.7.4 What is the Digital Divide?
1.8 Networks and the Internet Quiz
Quiz 1.8.1 Networks and the Internet Quiz
Badge 1.8.2 The Internet Badge
2. Primitive Types
2.1 Why Programming? Why Java?
Video 2.1.1 Printing in Java
Check for Understanding 2.1.2 Printing in Java
Example 2.1.3 Hello World
Example 2.1.4 Printing Multiple Lines
Exercise 2.1.5 Welcome Program
Exercise 2.1.6 ASCII Art
Exercise 2.1.7 Fixing a Paragraph
Exercise 2.1.8 Heating Up
Exercise 2.1.9 Personal Timeline
2.2 Variables and Data Types
Video 2.2.1 Variables and Types
Check for Understanding 2.2.2 Variables and Types
Example 2.2.3 Variables
Example 2.2.4 Using Final
Exercise 2.2.5 Our First Integer
Video 2.2.6 Variables and Types Pt. 2
Check for Understanding 2.2.7 Variables and Types Pt. 2
Example 2.2.8 Swapping Two Values
Exercise 2.2.9 Answering Questions
Exercise 2.2.10 Team Rankings
2.3 Expressions and Assignment Statements
Video 2.3.1 Arithmetic Expressions
Check for Understanding 2.3.2 Arithmetic Expressions
Example 2.3.3 Calculator
Example 2.3.4 Temperature Conversion
Example 2.3.5 Tricky Java
Exercise 2.3.6 Weight of a Pyramid
Exercise 2.3.7 Add Fractions
Exercise 2.3.8 Freely Falling Bodies
2.4 Compound Assignment Operators
Video 2.4.1 Compound Assignment Operators
Check for Understanding 2.4.2 Compound Assignment Operators
Example 2.4.3 All Functions Calculator
Example 2.4.4 Increase/Decrease by 1
Exercise 2.4.5 Work Shift
Exercise 2.4.6 Personalized T-shirts
2.5 User Input
Video 2.5.1 User Input
Check for Understanding 2.5.2 User Input Quiz
Example 2.5.3 Using the Scanner Class
Example 2.5.4 Increase/Decrease by 1 (User Input)
Example 2.5.5 int Before String
Exercise 2.5.6 Personalized T-shirts (User Input)
Exercise 2.5.7 Night Out
Exercise 2.5.8 MLA Citation
2.6 Casting and Ranges of Variables
Video 2.6.1 Casting
Check for Understanding 2.6.2 Casting
Example 2.6.3 Casting
Exercise 2.6.4 Casting to an Int
Exercise 2.6.5 Casting to a Double
Example 2.6.6 Casting Order of Operations
Example 2.6.7 Rounding Using Casting
Exercise 2.6.8 Movie Ratings
Example 2.6.9 Implicit Casting
Example 2.6.10 Min and Max Values of Integers
Exercise 2.6.11 Integer Overflow
2.7 Primitive Types Quiz
Unit Quiz 2.7.1 Primitive Types Quiz
3. Using Objects
3.1 Objects: Instances of Classes
Video 3.1.1 Objects: Instances of Classes
Check for Understanding 3.1.2 Quiz: Classes and Objects
Video 3.1.3 Multi-File Exercises in Java
Example 3.1.4 Rectangle Skeleton
Example 3.1.5 GrilledCheese Skeleton
Example 3.1.6 Shark Skeleton
Free Response 3.1.7 Free Response: What instance variables?
Exercise 3.1.8 Pizza Instance Variables
Exercise 3.1.9 Game Skeleton
3.2 Creating and Storing Objects (Instantiation)
Video 3.2.1 Creating and Storing Objects
Check for Understanding 3.2.2 Quiz: Constructors
Article 3.2.3 Official Objects Documentation
Free Response 3.2.4 Official Objects Documentation Response
Example 3.2.5 The Rectangle Class
Example 3.2.6 The Point Class
Example 3.2.7 The Student Class
Exercise 3.2.8 Using the Rectangle Class
Exercise 3.2.9 New Student Field
Exercise 3.2.10 More Instance Variables
Exercise 3.2.11 Pizza Time!
Badge 3.2.12 Instantiation Badge
3.3 Overloading
Video 3.3.1 Method Overloading
Check for Understanding 3.3.2 Method Overloading Quiz
Example 3.3.3 Overloaded Rectangle
Example 3.3.4 Overloaded GrilledCheese
Example 3.3.5 Null Pointer Exception
Exercise 3.3.6 Plain Coffee
Exercise 3.3.7 Custom Piñatas
Exercise 3.3.8 Website Class
Exercise 3.3.9 Empty References
3.4 Calling a Void Method
Video 3.4.1 Calling a Void Method
Check for Understanding 3.4.2 Quiz: Void Methods
Example 3.4.3 Area of a Rectangle
Example 3.4.4 Program Flow
Exercise 3.4.5 Hello!
Exercise 3.4.6 Loose Change
Exercise 3.4.7 Chat Bot
Exercise 3.4.8 Greetings and Salutations
3.5 Calling a Void Method with Parameters
Video 3.5.1 Calling a Void Method with Parameters
Check for Understanding 3.5.2 Methods and Parameters
Example 3.5.3 Rectangle
Example 3.5.4 Moving a Point
Exercise 3.5.5 Using the Point Class
Example 3.5.6 Calculator
Exercise 3.5.7 Cricket Players
Exercise 3.5.8 More Operations
Exercise 3.5.9 Chat Bot 2.0
3.6 Calling a Non-void Method
Video 3.6.1 Calling a Non-void Method
Check for Understanding 3.6.2 Quiz: Non-Void Methods
Example 3.6.3 Rectangle
Example 3.6.4 Desks in a Room
Example 3.6.5 Activity Log
Exercise 3.6.6 Number Games
Exercise 3.6.7 Construction Costs
Exercise 3.6.8 How Far Away is ...?
3.7 String Objects
Video 3.7.1 String Objects
Check for Understanding 3.7.2 String Objects
Example 3.7.3 Immutable Strings
Example 3.7.4 String Concatenation
Example 3.7.5 Rectangle Dimensions
Example 3.7.6 Printing Equations
Exercise 3.7.7 Pretty Printing Operations
Exercise 3.7.8 Auto-fill
Exercise 3.7.9 QuoteMachine
3.8 String Methods
Video 3.8.1 String Methods
Check for Understanding 3.8.2 String Methods
Example 3.8.3 Bigger Strings?
Example 3.8.4 Chopping Strings
Example 3.8.5 Object Concatenation
Exercise 3.8.6 Speaking
Exercise 3.8.7 toString for Animals
Exercise 3.8.8 Organizing Class Roster
Exercise 3.8.9 Concatenating Fractions
Exercise 3.8.10 Word Games
3.9 Wrapper Classes: Integers and Doubles
Video 3.9.1 Wrapper Classes
Check for Understanding 3.9.2 Quiz: Wrapper Classes
Example 3.9.3 Creating Integers
Example 3.9.4 Using Doubles
Example 3.9.5 Autoboxing Example
Exercise 3.9.6 Order Up!
Exercise 3.9.7 Currency
Exercise 3.9.8 Guess the number!
3.10 Using the Math Class
Video 3.10.1 Using the Math Class
Check for Understanding 3.10.2 Quiz: Static Methods
Example 3.10.3 Using the Math Class
Example 3.10.4 Static Methods: Rectangle
Example 3.10.5 Generating Random Numbers
Exercise 3.10.6 Circle Area
Exercise 3.10.7 The Unit Circle
Exercise 3.10.8 Racing
3.11 Using Objects Quiz
Unit Quiz 3.11.1 Using Objects Quiz
4. Boolean Expressions and if Statements
4.1 Boolean Expressions and if Statements
Video 4.1.1 Comparison Operators
Check for Understanding 4.1.2 Comparison Operators
Example 4.1.3 Old Enough To Vote
Example 4.1.4 Grade Range
Example 4.1.5 Equality of Strings
Exercise 4.1.6 Meeting Goals
Exercise 4.1.7 Sugar Tax
Exercise 4.1.8 Triple Double
4.2 if Statements and Control Flow
Video 4.2.1 If Statements
Check for Understanding 4.2.2 If Statements
Example 4.2.3 Can Vote
Example 4.2.4 Negative Numbers
Example 4.2.5 Rectangle
Exercise 4.2.6 Discounts
Exercise 4.2.7 Sweet or Unsweet?
Exercise 4.2.8 Cooking
Exercise 4.2.9 Rating
4.3 if-else Statements
Video 4.3.1 If-Else Statements
Check for Understanding 4.3.2 If-Else
Example 4.3.3 Bill with add tip
Example 4.3.4 Even and Odd
Exercise 4.3.5 Running Speed
Exercise 4.3.6 Battleships Move
Exercise 4.3.7 Ratings
Exercise 4.3.8 Player Score
4.4 else if Statements
Video 4.4.1 else-if Statements
Check for Understanding 4.4.2 else-if
Example 4.4.3 Add Tip
Example 4.4.4 Add Tip - 8 or 4 Customers
Example 4.4.5 Add Tip - 8, 4, 2 Customers
Exercise 4.4.6 Positive, Negative, or Zero
Exercise 4.4.7 Salmon Spawn
Exercise 4.4.8 Berries
Exercise 4.4.9 Battleships
4.5 Compound Boolean Expressions
Video 4.5.1 Compound Boolean Expressions
Check for Understanding 4.5.2 Logical Operators
Example 4.5.3 Light Switch
Example 4.5.4 Number in Range
Example 4.5.5 Pizza Slices
Exercise 4.5.6 Roller Coaster
Exercise 4.5.7 Compound Roller Coaster
Exercise 4.5.8 Divisibility
Exercise 4.5.9 Find the Median
4.6 Equivalent Boolean Expressions
Video 4.6.1 Equivalent Boolean Expressions
Check for Understanding 4.6.2 De Morgan's Laws
Example 4.6.3 De Morgan AND
Example 4.6.4 De Morgan OR
Exercise 4.6.5 Amusement Park
Exercise 4.6.6 Negative Numbers
Exercise 4.6.7 Odd and Even
Free Response 4.6.8 Odd and Even Free Response
4.7 Comparing Objects
Video 4.7.1 Comparing Objects
Check for Understanding 4.7.2 Comparing Objects
Example 4.7.3 Comparing Strings
Example 4.7.4 Comparing Rectangles
Example 4.7.5 Null Test
Example 4.7.6 Identify Aliases
Exercise 4.7.7 String Variable Trace
Free Response 4.7.8 String Trace
Exercise 4.7.9 Three Strings
Exercise 4.7.10 Comparing Circles
4.8 Boolean Expressions and if Statements Quiz
Unit Quiz 4.8.1 Boolean Expressions and If Statements Quiz
5. Computer Systems and Software Management
5.1 Hardware
Video 5.1.1 Hardware
Check for Understanding 5.1.2 Hardware Quiz
Free Response 5.1.3 Hardware vs. Software
Notes 5.1.4 Converting Between Units of Computer Storage
Free Response 5.1.5 Converting Between Memory Units
Badge 5.1.6 Hardware Badge
5.2 Operating Systems
Video 5.2.1 Operating Systems
Check for Understanding 5.2.2 Operating Systems Quiz
Example 5.2.3 Detect My OS
Free Response 5.2.4 Label Your Computer
Free Response 5.2.5 Computer Analogy
Connection 5.2.6 Upgrading a Mac OS
Example 5.2.7 Windows OS Installation Simulation
Free Response 5.2.8 Installing an OS
5.3 Comparing Operating Systems
Video 5.3.1 Comparing Operating Systems
Check for Understanding 5.3.2 Comparing Operating Systems Quiz
Example 5.3.3 Windows Simulation
Example 5.3.4 MacOS Simulation
Connection 5.3.5 Choose a Linux Distro!
Free Response 5.3.6 Which would you choose?
5.4 Compatibility
Video 5.4.1 Compatibility
Check for Understanding 5.4.2 Compatibility Quiz
Example 5.4.3 What Processor? Windows
Example 5.4.4 What Processor? Mac
Free Response 5.4.5 What Processor are you running?
5.5 Software and Applications
Video 5.5.1 Software and Applications
Check for Understanding 5.5.2 Software and Applications Quiz
Example 5.5.3 Spreadsheet Simulation
Example 5.5.4 Messaging Simulation
Example 5.5.5 Kanban Board Simulation
Free Response 5.5.6 Software Simulations
5.6 Software Licenses
Video 5.6.1 Software Licenses
Check for Understanding 5.6.2 Software Licenses Quiz
Free Response 5.6.3 Do I need a Software License?
Free Response 5.6.4 Is This Original?
Article 5.6.5 The Rise of Open Source Software
Free Response 5.6.6 The Rise of Open Source Software Response
Connection 5.6.7 Guide to Legal and Ethical Use of Software
Free Response 5.6.8 Guide to Legal and Ethical Use of Software Response
Free Response 5.6.9 Open-source vs Proprietary Reflection
5.7 Error Handling
Video 5.7.1 Error Handling
Quiz 5.7.2 Error Handling Quiz
Example 5.7.3 Dividing By Zero
Example 5.7.4 Element Out of Range
Notes 5.7.5 Checked and Unchecked Exceptions
Exercise 5.7.6 Voting Age Verifier
Exercise 5.7.7 Throwing Custom Exceptions
5.8 Application Security
Free Response 5.8.1 Share What You Learned
Video 5.8.2 Application Security
Check for Understanding 5.8.3 Application Security
Example 5.8.4 Windows Updates
Connection 5.8.5 Windows Defender Antivirus
Free Response 5.8.6 Windows Defender Antivirus
Free Response 5.8.7 CodeHS System Restore
Notes 5.8.8 Software Vulnerabilities
Article 5.8.9 Buffer Overflow
Free Response 5.8.10 Buffer Overflow Response
Article 5.8.11 Common Vulnerabilities Exploits
Free Response 5.8.12 Common Vulnerabilities Exploits Response
5.9 Browser Configuration
Check for Understanding 5.9.1 Pick the Label
Video 5.9.2 Browser Configuration
Check for Understanding 5.9.3 Browser Configuration
Connection 5.9.4 Cached CodeHS
Free Response 5.9.5 Cached CodeHS
Example 5.9.6 Is Your Popup Blocker On?
Free Response 5.9.7 Browser Extensions Lab
5.10 System Administration
Video 5.10.1 User Accounts
Check for Understanding 5.10.2 User Accounts Quiz
Free Response 5.10.3 User Accounts
Free Response 5.10.4 Shared Folders and Files
Video 5.10.5 Host Security
Check for Understanding 5.10.6 Host Security Quiz
Free Response 5.10.7 Security Baseline
5.11 Command Line Interface
Notes 5.11.1 Linux/MacOS vs. Windows
Video 5.11.2 Command Line Interface
Check for Understanding 5.11.3 Command Line Interface Quiz
Resource 5.11.4 Command Equivalents
Video 5.11.5 Windows Command Prompt
Free Response 5.11.6 Windows Command Prompt
Free Response 5.11.7 Directory Directions
Connection 5.11.8 Neural Interface?
Free Response 5.11.9 Neural Interface?
5.12 Executing Code
Video 5.12.1 Executing Your Code
Quiz 5.12.2 Executing Your Code
Notes 5.12.3 What Does Bytecode Look Like?
Free Response 5.12.4 Researching Bytecode
5.13 Version Control
Video 5.13.1 Version Control
Quiz 5.13.2 Version Control Quiz
Connection 5.13.3 Visualizing Commits and Branches
Free Response 5.13.4 Visualizing Commits and Branches Response
Free Response 5.13.5 Create a Git Repository
Notes 5.13.6 Initializing Your Repository
Notes 5.13.7 Add, Commit, Push
Notes 5.13.8 Make A Change and Pull
Notes 5.13.9 Reverting Your Commit
Free Response 5.13.10 Version Control Reflection
5.14 System Administration Quiz
Unit Quiz 5.14.1 System Administration Quiz
6. Iteration
6.1 Iteration
Video 6.1.1 While Loops
Check for Understanding 6.1.2 While Loops
Example 6.1.3 While Loop Countdown
Example 6.1.4 Get Down to One
Example 6.1.5 Running Average
Exercise 6.1.6 Making Taffy
Exercise 6.1.7 Guess the Number
Exercise 6.1.8 Divisibility
Exercise 6.1.9 Max and Min Values
6.2 For Loops
Video 6.2.1 For Loops
Check for Understanding 6.2.2 For Loops
Example 6.2.3 For Loop
Example 6.2.4 Countdown
Example 6.2.5 Count By Twos
Exercise 6.2.6 Print the Odds
Exercise 6.2.7 Repeat
Exercise 6.2.8 Replace WHILE with FOR Loop
Exercise 6.2.9 Replace FOR Loop with WHILE Loop
Exercise 6.2.10 Multiplication Table
6.3 Developing Algorithms Using Strings
Video 6.3.1 Developing Algorithms Using Strings
Check for Understanding 6.3.2 Developing Algorithms Using Strings
Example 6.3.3 Traversing Strings
Example 6.3.4 Replace Characters
Example 6.3.5 Reverse String
Exercise 6.3.6 Replace Letter
Exercise 6.3.7 Password Checker
Exercise 6.3.8 Finding Palindromes
Exercise 6.3.9 Fixing Grammar
Exercise 6.3.10 Teen Talk
Badge 6.3.11 String Processing Badge
6.4 Nested Iteration
Video 6.4.1 Nested Iteration
Check for Understanding 6.4.2 Nested Iteration
Example 6.4.3 Make a Rectangle
Example 6.4.4 Nested Loop Iteration Counts
Example 6.4.5 Inverted Triangle
Exercise 6.4.6 Upright Number Triangle
Exercise 6.4.7 Make a Tree
Exercise 6.4.8 Multiplication Table
6.5 Informal Code Analysis
Video 6.5.1 Informal Code Analysis
Check for Understanding 6.5.2 Informal Code Analysis
Example 6.5.3 Loop Execution Count
Example 6.5.4 While Loop Time
Example 6.5.5 For Loop Time
Free Response 6.5.6 Time Comparisons
Exercise 6.5.7 Improving findChar Speed
Example 6.5.8 Improving findChar Speed Check
Free Response 6.5.9 findChar Speed Reflection
6.6 Iteration Quiz
Unit Quiz 6.6.1 Iteration Quiz
7. Writing Classes
7.1 Writing Classes
Video 7.1.1 Anatomy of Classes
Check for Understanding 7.1.2 Quiz: Access Modifiers
Example 7.1.3 Rectangle Getter Methods
Exercise 7.1.4 Access for DNA Class
Exercise 7.1.5 Access for Employee Class
Exercise 7.1.6 Fixing Circle
7.2 Constructors
Video 7.2.1 Constructors
Check for Understanding 7.2.2 Quiz: Constructors
Example 7.2.3 SuperHero Class
Example 7.2.4 Initializing an Object without a Constructor
Exercise 7.2.5 Batting Average
Exercise 7.2.6 Dog Class
Exercise 7.2.7 Student Overload
Exercise 7.2.8 SchoolClub Class
7.3 Documentation with Comments
Video 7.3.1 Documentation with Comments
Check for Understanding 7.3.2 Quiz: Comments
Example 7.3.3 Comments for Debugging
Example 7.3.4 Power Class with Comments
Exercise 7.3.5 Commenting Activity Tracker
Exercise 7.3.6 Commenting Activity Log
Exercise 7.3.7 C.Y.O.A. Layout
Exercise 7.3.8 C.Y.O.A. Finishing the story
7.4 Accessor Methods
Video 7.4.1 Accessor Methods
Check for Understanding 7.4.2 Quiz: Accessors
Example 7.4.3 Student Getter Methods
Example 7.4.4 SuperHero Class with Secret Identity
Exercise 7.4.5 Add Some Getter Methods
Exercise 7.4.6 Full Dragon Class
Exercise 7.4.7 A Different Dragon Class
Exercise 7.4.8 A Chef's Best Meal
7.5 Mutator Methods
Video 7.5.1 Mutator Methods
Check for Understanding 7.5.2 Quiz: Mutators
Example 7.5.3 SuperHero Class with Mutator Methods
Example 7.5.4 Student Setters
Exercise 7.5.5 Rectangle class
Exercise 7.5.6 Full Fraction Class
Exercise 7.5.7 Weekly Routine
7.6 Writing Methods
Video 7.6.1 Writing Methods
Check for Understanding 7.6.2 Quiz: Writing Methods
Example 7.6.3 Triangle Class
Example 7.6.4 Baseball Player Class
Exercise 7.6.5 Distance Conversions
Exercise 7.6.6 Food App Demo
Exercise 7.6.7 Car Class
Resource 7.6.8 Combination Lock FRQ
7.7 Static Variables and Methods
Video 7.7.1 Static Variables and Methods
Check for Understanding 7.7.2 Quiz: Static Methods
Example 7.7.3 Static SuperHero
Example 7.7.4 Static Variables: Circle
Exercise 7.7.5 Randomizer Class
Exercise 7.7.6 Rock, Paper, Scissors!
Exercise 7.7.7 In the Game?
7.8 Scope and Access
Video 7.8.1 Scope and Access
Check for Understanding 7.8.2 Quiz: Local Variables and Scope
Example 7.8.3 Instance Variable Scope
Example 7.8.4 Local Variable Scope
Example 7.8.5 Variable Shadowing
Example 7.8.6 Method Decomposition with Trivia
Exercise 7.8.7 Scope
Exercise 7.8.8 Which Variables Exist?
Exercise 7.8.9 Broken Calculator
7.9 this Keyword
Video 7.9.1 this Keyword
Check for Understanding 7.9.2 Quiz: this Keyword
Example 7.9.3 Rectangles and this
Example 7.9.4 Student and this
Exercise 7.9.5 Write Your Own CodeHS
Exercise 7.9.6 Song Class
Exercise 7.9.7 Fraction Math
7.10 Ethical and Social Implications of Computing
Video 7.10.1 Implications of Computing Systems
Free Response 7.10.2 Computing and Your Life
Check for Understanding 7.10.3 Quiz: Ethical and Social Impact
Connection 7.10.4 ACM General Ethical Principles
Free Response 7.10.5 ACM General Ethical Principles
Connection 7.10.6 Bias in Facial Recognition
Free Response 7.10.7 Bias in Facial Recognition
Connection 7.10.8 Self-driving Cars
Free Response 7.10.9 Self-driving Cars
7.11 Writing Classes Quiz
Unit Quiz 7.11.1 Writing Classes Quiz
8. Data Structures
8.1 What are Data Structures?
Video 8.1.1 What are Data Structures?
Check for Understanding 8.1.2 Quiz: Data Structures
Free Response 8.1.3 Data Structures Everywhere
8.2 Introduction to Arrays
Video 8.2.1 Introduction to Arrays
Check for Understanding 8.2.2 Quiz: Arrays
Example 8.2.3 Making an Array
Example 8.2.4 Make an Empty Array
Example 8.2.5 Indexing Into an Array
Exercise 8.2.6 Our First Array
Practice 8.2.7 Array Length
Practice 8.2.8 Last Element in Array
8.3 Using Arrays
Video 8.3.1 Using Arrays
Check for Understanding 8.3.2 Quiz: Using Arrays
Example 8.3.3 Iterating Over an Array
Example 8.3.4 Sum Array
Example 8.3.5 Array Out of Bounds
Exercise 8.3.6 Print Array
Exercise 8.3.7 Print Odd Array Indices
Practice 8.3.8 Find the Last Multiple of 3
Example 8.3.9 Classroom Example
Example 8.3.10 Exam Scores
Example 8.3.11 Array References
Practice 8.3.12 Find the Median
Exercise 8.3.13 Most Improved
Badge 8.3.14 Arrays Badge
8.4 Enhanced For Loops
Video 8.4.1 Enhanced For Loops
Check for Understanding 8.4.2 Enhanced For Loop
Example 8.4.3 Enhanced For Loop
Example 8.4.4 Classroom Array
Example 8.4.5 Updating Values in a Loop
Exercise 8.4.6 Print Odds
Exercise 8.4.7 Largest Value
Exercise 8.4.8 Classroom Array
Exercise 8.4.9 Array Average
8.5 ArrayList Methods
Video 8.5.1 ArrayLists
Check for Understanding 8.5.2 Quiz: ArrayList
Example 8.5.3 Hello World ArrayList
Example 8.5.4 ArrayList and Java Primitives
Example 8.5.5 ArrayList Size Method
Exercise 8.5.6 Get First Element
Example 8.5.7 Reading List
Example 8.5.8 Texting in Class
Exercise 8.5.9 Road Trip!
Resource 8.5.10 MagicalWorld Candy FRQ
8.6 Arrays vs ArrayLists
Video 8.6.1 Arrays vs ArrayLists
Check for Understanding 8.6.2 Quiz: Arrays vs ArrayList
Example 8.6.3 Expanding Array
Exercise 8.6.4 Improving Expanding Array
Example 8.6.5 Array vs ArrayList
Resource 8.6.6 Seat Assignments FRQ
8.7 Additional Loop Examples
Video 8.7.1 Additional Loop Examples
Check for Understanding 8.7.2 Additional Loop Examples
Example 8.7.3 For and While Loops
Example 8.7.4 ArrayList Traversing Error
Example 8.7.5 Traversing ArrayLists Simultaneously
Exercise 8.7.6 Replace FOR Loop with WHILE Loop
Exercise 8.7.7 Traversing Odds
Exercise 8.7.8 ArrayList Equals
8.8 The List Interface
Video 8.8.1 The List Interface
Check for Understanding 8.8.2 The List Interface Quiz
Example 8.8.3 Reverse the List
Practice 8.8.4 Summer Reading Short List
8.9 2D Arrays
Video 8.9.1 2D Arrays
Check for Understanding 8.9.2 Quiz: 2D Arrays
Example 8.9.3 Nested Loops
Practice 8.9.4 Ice Cream Combos
Example 8.9.5 First 2D Array
Example 8.9.6 Initializing a 2D Array
Example 8.9.7 The Matrix
Practice 8.9.8 Sum Rows in a Matrix
Badge 8.9.9 Matrix Badge
8.10 Traversing 2D Arrays
Video 8.10.1 Traversing 2D Arrays
Check for Understanding 8.10.2 Quiz: Traversing 2D Arrays
Example 8.10.3 Traversing Gradebook
Example 8.10.4 Linear Search 2D Arrays
Example 8.10.5 Row vs. Column Major
Free Response 8.10.6 Row vs. Column Major
Exercise 8.10.7 Sum Rows in a 2D Array
Exercise 8.10.8 Tic Tac Toe Methods
Challenge 8.10.9 Finalizing Tic Tac Toe
8.11 HashMaps
Video 8.11.1 HashMaps
Check for Understanding 8.11.2 Quiz: HashMaps
Example 8.11.3 The Phonebook
Example 8.11.4 Arrays Vs HashMaps
Free Response 8.11.5 Arrays Vs HashMaps Response
Example 8.11.6 The Phonebook: Array Vs HashMap
Free Response 8.11.7 The Phonebook: Array Vs HashMap
Exercise 8.11.8 Word Counts
Free Response 8.11.9 Word Counts Reflection
8.12 Binary
Video 8.12.1 Number Systems
Check for Understanding 8.12.2 Number Systems Quiz
Example 8.12.3 Converting Octal to Decimal
Practice 8.12.4 Converting Binary to Decimal
Video 8.12.5 Using Binary
Check for Understanding 8.12.6 Using Binary Quiz
Example 8.12.7 Integer Limits
Exercise 8.12.8 Binary Translator
Resource 8.12.9 Genres Galore Online Shop FRQ
8.13 Ethical Issues Around Data Collection
Video 8.13.1 Ethical Issues Around Data Collection
Check for Understanding 8.13.2 Ethical Issues Around Data Collection
Connection 8.13.3 The Curly Fry Conundrum
Free Response 8.13.4 Reflection
Connection 8.13.5 Guidelines on Ethical Data Use
Free Response 8.13.6 Issue News Article
Badge 8.13.7 ArrayList Badge
8.14 Data Structures Quiz
Unit Quiz 8.14.1 Data Structures Quiz
9. Algorithms and Recursion
9.1 What is an Algorithm?
Video 9.1.1 What is an Algorithm?
Free Response 9.1.2 Every Day Algorithms
Connection 9.1.3 Big O Notation
Free Response 9.1.4 Big O Notation
Video 9.1.5 Space Complexity
Free Response 9.1.6 Space and Time Complexity
9.2 Linear Search
Video 9.2.1 Linear Search
Example 9.2.2 Linear Search
Practice 9.2.3 Linear Search on ArrayList
Resource 9.2.4 Gradebook FRQ
9.3 Binary Search
Video 9.3.1 Binary Search
Check for Understanding 9.3.2 Binary Search
Example 9.3.3 Binary Search
Example 9.3.4 Binary vs Linear
Exercise 9.3.5 Comparing Binary Search and Linear Search
Badge 9.3.6 Binary Search Badge
9.4 Selection Sort
Video 9.4.1 Selection Sort
Check for Understanding 9.4.2 Selection Sort
Example 9.4.3 Selection Sort
Example 9.4.4 Visualizing Algorithms
Exercise 9.4.5 Explore Selection Sort
9.5 Insertion Sort
Video 9.5.1 Insertion Sort
Check for Understanding 9.5.2 Insertion Sort
Example 9.5.3 Visualizing Algorithms
Example 9.5.4 Insertion Sort
Exercise 9.5.5 Explore Insertion Sort
Connection 9.5.6 Bubble Sort
Free Response 9.5.7 Bubble Sort Free Response
9.6 Recursion
Video 9.6.1 Recursion
Check for Understanding 9.6.2 Quiz: Recursion
Example 9.6.3 Summing
Example 9.6.4 Sum Array
Example 9.6.5 Fibonacci Recursion
Exercise 9.6.6 Factorial
Exercise 9.6.7 Countdown!
Exercise 9.6.8 Recursive Minimum
Exercise 9.6.9 Bacteria Cultures
9.7 Mergesort
Video 9.7.1 Mergesort
Example 9.7.2 Visualizing Algorithms
Example 9.7.3 Merge Sort
Exercise 9.7.4 Explore Merge Sort
Badge 9.7.5 Algorithms Badge
9.8 Informal Code Analysis
Video 9.8.1 Informal Code Analysis
Check for Understanding 9.8.2 Informal Code Analysis
Example 9.8.3 Loop Execution Count
Example 9.8.4 While Loop Time
Example 9.8.5 For Loop Time
Free Response 9.8.6 Time Comparisons
Exercise 9.8.7 Improving isChar Speed
Example 9.8.8 Improving isChar Speed Check
Free Response 9.8.9 isChar Speed Reflection
9.9 Algorithms and Recursion Quiz
Unit Quiz 9.9.1 Algorithms and Recursion Quiz
10. Inheritance
10.1 Inheritance
Video 10.1.1 Inheritance
Check for Understanding 10.1.2 Quiz: Subclasses and Superclasses
Example 10.1.3 Person Superclass
Example 10.1.4 Vehicle Superclass
Example 10.1.5 High School Student
Exercise 10.1.6 Person / Student Object
Exercise 10.1.7 Books
Exercise 10.1.8 Computers
Exercise 10.1.9 More Animals!
10.2 Writing Constructors for Subclasses
Video 10.2.1 Writing Constructors for Subclasses
Check for Understanding 10.2.2 Quiz: Writing Constructors for Subclasses
Example 10.2.3 Student Subclass
Example 10.2.4 Shape Class
Example 10.2.5 Implicit Call to Super
Exercise 10.2.6 Students
Exercise 10.2.7 Instruments
Exercise 10.2.8 Foods
Exercise 10.2.9 Clothing Store
10.3 Overriding Methods
Video 10.3.1 Overriding Methods
Check for Understanding 10.3.2 Quiz: Overriding Methods
Example 10.3.3 Square is a Rectangle
Example 10.3.4 Student toString
Example 10.3.5 Restaurant Bills
Exercise 10.3.6 Dogs Bark
Exercise 10.3.7 Electric Cars
Exercise 10.3.8 Online Companies
10.4 super Keyword
Video 10.4.1 super Keyword
Check for Understanding 10.4.2 Quiz: super Keyword
Example 10.4.3 Square Class
Example 10.4.4 Animal Class
Example 10.4.5 Apple Pie
Exercise 10.4.6 Squares
Exercise 10.4.7 Bank Accounts
Exercise 10.4.8 Employees
Exercise 10.4.9 Student Test Scores
10.5 Abstract Classes and Interfaces
Video 10.5.1 Abstract Classes and Interfaces
Quiz 10.5.2 Abstract Classes and Interfaces Quiz
Example 10.5.3 Animals
Exercise 10.5.4 Electric and Internal Combustion Engine Vehicles
10.6 Creating References Using Inheritance
Video 10.6.1 Creating References Using Inheritance Hierarchies
Check for Understanding 10.6.2 Quiz: References Using Inheritance Hierarchies
Example 10.6.3 Animal Sounds
Example 10.6.4 Shape Areas
Example 10.6.5 Person Class
Exercise 10.6.6 Pies
Exercise 10.6.7 Creating .equals
Exercise 10.6.8 Online Companies Revisited
Exercise 10.6.9 Assignments
10.7 Polymorphism
Video 10.7.1 Polymorphism
Check for Understanding 10.7.2 Quiz: Polymorphism
Example 10.7.3 Using Person Methods
Example 10.7.4 Modified Student Class
Example 10.7.5 Vehicle Methods
Exercise 10.7.6 Which Team?
Exercise 10.7.7 Cars
Exercise 10.7.8 Library Books
Exercise 10.7.9 Fun with Solids
10.8 Object Superclass
Video 10.8.1 Object Superclass
Check for Understanding 10.8.2 Quiz: Object Superclass
Example 10.8.3 Default Values
Example 10.8.4 Override toString
Example 10.8.5 Override equals
Exercise 10.8.6 Equal?
Exercise 10.8.7 Equals? - Part 2
Exercise 10.8.8 Equal Rectangles
Exercise 10.8.9 2D Array Tester
10.9 Inheritance Quiz
Unit Quiz 10.9.1 Inheritance Quiz