Also, should be good until at least 65'535 (beyond which is hit or miss on unicode characters)
Java 'char' is really UTF-16 encoded, meaning that values between 0xD800..0xDBFF (55296 - 56319 in decimal) must be paired with a following 0xDC00 - 0xDFFF value (and vice versa) or otherwise be invalid. See the
UTF-16 page on wikipedia for more details.