Those are not different numbers…
- 3081 = 0c09 = ఉ = TELUGU LETTER U
- 3108 = 0c24 = త = TELUGU LETTER TA
- 3149 = 0c4d = ్ = TELUGU SIGN VIRAMA
… and so on.
Two different ways to represent the same Unicode code point.
The first are decimal numbers (base 10). The second are hexadecimal numbers (base 16).
When using a class such as Formatter, sometimes it helps to read the documentation. Then you might understand why you pasted f.format("\\u%04x"
into your code.
Tip: If you have a Mac, download the UnicodeChecker app to see both decimal and hex numbers for each character defined in Unicode.