Demo project for my "Confusing Java Strings" article/talk.
Eclipse Adoptium 18.0.1+10 (OpenJDK 64-Bit Server VM)
--- Length ---
Java -> 4
ζεζ¬’θΆ -> 4
πππ -> 6
π©β€β -> 4
π©βπ»β€οΈπ΅ -> 9
--- Code Point Count ---
Java -> 4
ζεζ¬’θΆ -> 4
πππ -> 3
π©β€β -> 3
π©βπ»β€οΈπ΅ -> 6
--- Code Points ---
Java -> U+4A U+61 U+76 U+61
ζεζ¬’θΆ -> U+6211 U+559C U+6B22 U+8336
πππ -> U+1D552 U+1D553 U+1D554
π©β€β -> U+1F469 U+2764 U+2615
π©βπ»β€οΈπ΅ -> U+1F469 U+200D U+1F4BB U+2764 U+FE0F U+1F375
--- Code Units ---
Java -> \u4A \u61 \u76 \u61
ζεζ¬’θΆ -> \u6211 \u559C \u6B22 \u8336
πππ -> \uD835 \uDD52 \uD835 \uDD53 \uD835 \uDD54
π©β€β -> \uD83D \uDC69 \u2764 \u2615
π©βπ»β€οΈπ΅ -> \uD83D \uDC69 \u200D \uD83D \uDCBB \u2764 \uFE0F \uD83C \uDF75
--- Buggy Reverse ---
abπ -> ??ba
πππ -> ?ππ?
--- Reverse ---
abπ -> πba
πππ -> πππ
--- Substring(0,5) ---
πππ -> ππ?
abcπ©βπ» -> abcπ©
aπ©βπ» -> aπ©β?