Any problem in any area of the Java section of codingbat.com makes for good practice. Here are some I have recently inspected/completed that I think make for particularly good practice. The point of these exercises is to solve them independently to help you practice for the exam. You may of course seek guidance from the instructor, the tutors, each other, etc. but ensure you are thinking though the solutions. It's pretty pointless to just see the solution code... reading code is not the point of the final exam. Creating code is the point. >>> Warmup-1 <<< Basics: sumDouble, parrotTrouble, nearHundred, intMax, close10, lastDigit Strings: notString, missingChar, frontBack, startOz Loops: stringE, everyNth >>> Warmup-2 <<< (almost all involve loops in some way) Strings: stringTimes, countXX, doubleX, stringSplosion, last2, stringMatch, stringX Arrays: arrayCount9, arrayFront9, array123, array667, noTriples >>> AP-1 <<< (almost all involve arrays in some way) scoresIncreasing, scores100, scoresClump, scoresAverage, wordsCount, wordsFront hasOne, dividesSelf, copyEvens, scoreUp, wordsWithout, scoresSpecial, sumHeights, sumHeights2, bigHeights, >>> Logic-2 <<< makeBricks, loneSum, luckySum, noTeenSum, roundSum, blackjack, evenlySpaced, makeChocolate >>> Array-2 <<< countEvens, bigDiff, centeredAverage, sum67, has22, lucky13, more14, only14, no14 isEverywhere, either24, matchUp, has12, modThree, sameEnds, tripleUp, tenRun, pre4, post4, zeroFront, withoutTen, evenOdd