This week's book giveaway is in the OCAJP 8 forum. We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line! See this thread for details.
I don't know the answer to your question; however, if I use the same code to encode 'A', I also get 4 bytes, so I don't think it's anything special about the character or the method call. I haven't quite penetrated the density that is the Wikipedia article on UTF-16, but the article says it can return either one or two 16-bit values. I guess for UTF-16 it may always return 2.
I'm curious, but not enough to stay up and research it tonight, but I thought I'd throw this in in case you had not thought to give it a regular ol' ASCII character...
I apologize it should have been 32 as you've already figured out. After reading Jesper's post regarding the byte order mark things started making sense. I added more characters to the string then realized it truly is just a header for the string and that each additional char I added only added two bytes. I want to thank everyone who contributed to this post. What a wonderful / helpful forum.