As of now, I feel like I haven't learned enough in Computer Science II. (Java)

Every month or so, there are competitions and stuff at schools (Featuring a 50 problem written test, followed with a bunch of labs for your team to solve).
I usually don't do well at these. Everyone else seems to be much better at coding D:

Also, I want to make some sort of game this year.

So...

I want to learn ahead. But where should I start?

So far, I have learned
Loops/Control Structures
Arrays/ArrayLists
Methods/Classes
Graphics (I pretty much forgot everything with the graphics class though. Is this important?)