Just to expand on Douglas's answer*, I can give a firm example of where I've used it. Consider reading a dictionary file, with thousands of lines, each one of them just a single word. The simplest way of reading this is to use BufferedReader.readLine().
Unfortunately, readLine() allocates a buffer of 80 characters by default as the expected line length. This means that usually it can avoid pointless copying - and a bit of wasted memory isn't normally too bad. However, if you're loading a dictionary of short words in for the duration of the application, you end up with a lot of memory being permanently wasted. My "little app" sucked up far more memory than it should have done.
The solution was to change this:
String word = reader.readLine();
into this:
String word = new String(reader.readLine());
... with a comment, of course!
* I can't remember whether I was working with Douglas when this actually cropped up, or whether it's just coincidence that he answered this particular question.