Update JNI code in preparation for ICU 59 switching to C++11 char16_t.

ICU 59 (update pending on the aosp/icu59 branch) has switched to using
the C++11 char16_t data type, which is a distinct type from uint16_t
(which is what JNI's jchar is typedef'd as), even though they are
bitwise identical.

All code that passes UTF-16 data between ICU4C and JNI must therefore be
updated with typecasts in the appropriate places before ICU 59 is merged
to aosp/master.

Bug: 37554848
Test: make
Change-Id: I10808c4104e9dabfd90975ee61c465b22ff30281
5 files changed