Encourage students to get the for-loop counter right before adding code inside the for loop this will reduce the amount of time spent troubleshooting for-loops and ensure students are scaffolded well.
Having students trace a simple program for drawing a set of squares in Processing to introduce loops and strengthen student understanding for-loops with a body of code through practice.
Show a variety of for loops conditionals (e.g., < vs. <=; different variable names, different start values, different increment operations) to avoid common misconceptions about loops.
Misconception: Return is a mystery to students because they may not understand that functions have an entry point and an exit point. This results in mistakes such as assuming Python will return the right thing.
Misconception: Students struggle with the jump from writing code in one method to writing code in two methods.
Explain that when you ask an object to do something the proper syntax in Java is to say object [dot] method, sometimes there is additional information required.
Force students to explore inheritance and the Java APIs for ArrayList by writing code that HAS-A ArrayList or IS-A ArrayList.
Walk students through clicking on links in Java Docs to figure out unknown words and concepts (like iterable) by exploring the detailed explanation; plus the AP test expects students to read Java Docs online.
Have students act out diagrams they create of the stack and heap to extend this common drawing exercise and help them strengthen their mental models.