title: Inconsistent results with toCharArray and UTF-16
body: <p>I'm still trying to wrap my head around the unicode handling and encoding of Chinese characters in Java, maybe someone can explain what I'm seeing in my debugger. I was hoping I can keep it simple and not delve into <code>codePoints</code> or use <code>getBytes</code> and simple stick with <code>toCharArray</code>. I retrieve strings with Chinese characters from either a web API/page or from a Google sheet. My understanding is that this is all handled internal within Java as UTF-16 (hidden from the user). I seem to (reliably) get 2 (Java) <code>chars</code> per Chinese character, even stuff like question marks and punctuation. When convert the string to a char array via <code>toCharArray</code> I seem to almost always see a leading 'u200b' (white space) and then the actual character with the correct unicode. (I know this is more complex and I probably phrase that wrong).</p>
  
  <pre><code>char[] FW_Array = tmpChar.toCharArray();
  </code></pre>
  
  <p>But here is my actual question, I seem to get only a single (Java) <code>char</code> for '-' in the first case, where as for the (I assume) same character I get two (Java) <code>char</code> in the second case. How come ?</p>
  
  <p><a href="https://i.stack.imgur.com/hEiND.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/hEiND.png" alt="enter image description here"></a></p>
  
  <p><a href="https://i.stack.imgur.com/NpDs9.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/NpDs9.png" alt="enter image description here"></a></p>