Renamed f array to isCrossed.
Got read of isCrossed[0] and isCrossed[1] initialization by making sure nothing used an index less than 2.
Extracted inner loop of crossOutMultiples() to crossOutMultiplesOf(int i).
Made the isCrossed[i] == false conditional into the method notCrossed(i).
Moved the Math.sqrt(isCrossed.length) + 1 for loop conditional into a method and used a local variable for the conditional.
Refactored the first loop of putUncrossedIntegersIntoResult into a method named numberOfUncrossedIntegers().